我正在构建一个REST API,但我遇到了一个问题。
似乎设计REST API的公认实践是,如果请求的资源不存在,则返回404。
然而,对我来说,这增加了不必要的歧义。HTTP 404更传统地与坏的URI相关联。所以实际上我们是在说“要么你到了正确的地方,但是那个特定的记录不存在,或者在互联网上没有这样的位置!我真的不确定是哪一个……”
考虑以下URI:
http://mywebsite/api/user/13
如果我得到一个404,是不是因为用户13不存在?或者是因为我的URL应该是:
http://mywebsite/restapi/user/13
在过去,如果记录不存在,我只会返回一个带有HTTP 200 OK
响应代码的空结果。它很简单,在我看来非常干净,即使它不一定是被接受的实践。但是有没有更好的方法呢?
https://stackoverflow.com/questions/9930695
复制相似问题