异常的正确HTTP状态是什么?

Ric*_*nop 0 http http-status

如果我的脚本抛出异常,我应该返回什么HTTP状态?

200好的

要么

500内部服务器错误

假设用户请求参数是正确的,但我的脚本中存在一个错误,导致出现错误消息而不是正确的响应(XML,JSON或其他格式).什么应该是HTTP状态?

Rob*_*ska 9

500 Internal Server Error 如果客户端更改其请求无法修复错误,则为正确状态.

4XX如果客户端可能能够修复其请求以避免错误(或者404未找到资源),请使用任何状态.

200 OK不是在几乎任何错误的情况适当的状态,因为这时客户认为事情都运行正常(他们没有),并可能继续犯同样的错误造成的请求.

熟悉RFC2616中可用状态代码,找到最适合该情况的代码.