布尔资源的HTTP状态码

我在工作中开发API时遇到了困境。 假设我有一个资源路线如下:

/订单/:订单​​/可回收

该资源应该检查订单是否可以退回到商店。 现在它正在回复状态码200,如果它可退回的,404如果不是。

一位同事正确地指出,资源并没有消失,我应该使用200作为回应,然后用包含我的结果的机构作出回应。

两者都有它们的语义含义,我没有看到明确的赢家。

我们应该使用什么响应状态码? 身体里应该有什么东西?


你的同事是对的。 从规范(http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.5),它说404是“服务器没有找到任何匹配的请求URI”。 在你的情况下,服务器找到了一些东西,它需要返回。 您需要定义在响应此API时返回的实体的语法,并返回HTTP 200.它可以像布尔值一样简单,或者只要记录它就有意义。

如果给定的“orderId”不存在,它应该返回HTTP 404。

链接地址: http://www.djcxy.com/p/45611.html

上一篇: HTTP status code for a boolean resource

下一篇: Scrapy and response status code: how to check against it?