有效负载中指定的无效资源的HTTP状态代码

时间:2018-02-09 05:40:07

标签: rest http jersey http-status-code-404 http-status-codes

我有一个REST请求(虽然不完全是REST)。输入数据通过HTTP有效负载作为XML接收,因此要读取的记录在xml中指定为

<Item> <ID>1</ID> </Item>

此处,如果ID&#39; 1&#39;在数据库中找不到,我应该返回404 Not found。

根据https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html404 Not Found被称为The server has not found anything matching the Request-URI.但在我的情况下,可以成功到达URI并且无法找到有效负载中的数据。是否适合使用404或我应该使用任何其他状态代码?

1 个答案:

答案 0 :(得分:1)

首先,为什么要发送有效负载来检索数据?如果要以RESTful方式检索数据,则应在路径中发送id,如/some-resource/1。我希望有一个很好的理由不遵循这个标准。

在任何情况下,在我看来,返回404是最好的方法。如果找不到资源,任何客户端都会期望404,即使正式定义指定资源位于URL中。