GET 请求消息是否可以 return HTTP 状态代码 201?

Can GET request message ever return a HTTP status code of 201?

GET 请求消息是否可以 return HTTP 状态代码 201?

201 - 已创建。

我们可以return GET 代码201,但通常我们使用POST 在服务器中发送一些数据。所以我认为 return 201 for GET

不好

是的。 API 可以控制要发送的状态代码。

实际上,状态代码旨在传达响应的状态 - 因此不太可能从 GET 请求返回 201(“已创建”)。

符合标准的 HTTP 服务器永远不应该这样做。 GET 是一种安全的方法,应该不会有任何副作用。

201 表示在服务器上创建了一个新资源,实际上是 side-effect.

因此,如果 GET 导致 201,则有问题。但是,如果您正在构建一个客户端,想提前知道您 可能 获得哪些成功代码,您应该只支持 every 200 到 299 之间的代码(含)并将它们都视为成功代码。