【发布时间】:2014-07-11 17:37:06
【问题描述】:
假设我有一个 REST POST 端点:www.foo.com/id/X 其中X 代表一个数字。
我的服务器端伪代码如下所示:
performIdLookup(int id) {
if ( idExists(id) ) {
return toJson(lookup(id)) // returns 200/OK Status Code with object as JSON
}
else {
return HTTP_???_error
}
}
根据这个question,发送400 错误似乎并不在这里,因为用户提交了一个有效的请求,但服务器找不到它。
什么是正确的 HTTP 响应,为什么?
【问题讨论】:
-
那是正确的错误404
-
你现在应该已经记住了 404 - 做 web 开发;p
-
404 没问题。顺便说一句,500 是内部服务器错误
-
@ScottSelby 500 应该不未经身份验证。
500 Internal Server Error:“一般错误消息,当遇到意外情况并且没有更具体的消息适合时给出。” -
@ScottSelby 由于响应是 JSON,这看起来像一个 REST API。对于这种情况,重定向不是一个好主意。
标签: rest http http-status-codes