小编典典

使用HTTP状态代码来反映Web服务请求的成功/失败吗?

ajax

我正在实现一个返回JSON编码的有效负载的Web服务。如果服务调用失败(例如,由于参数无效),则返回JSON编码的错误。但是,我不确定在这种情况下应返回什么HTTP状态代码。

一方面,似乎HTTP状态代码用于HTTP:即使返回了应用程序错误,HTTP传输 本身 还是成功的,表明响应为 200 OK

另一方面,RESTful方法似乎建议如果调用者试图发布到资源,并且请求的JSON参数某种程度上无效,则认为 400 Bad Request
是适当的。

我在客户端使用Prototype,它具有一种很好的机制,可以根据HTTP状态代码( onSuccessonFailure
)自动调度到不同的回调,因此,我很想使用状态代码来指示服务成功或失败,但是我很想知道是否有人对此事有看法或有实践经验。

谢谢!


阅读 239

收藏
2020-07-26

共1个答案

小编典典

http状态代码仅用于指示应用程序响应的状态。就像您说的那样,如果json参数由于某种原因无效,那么400状态码 合适的答案。

是的,使用http状态代码是一个非常好的主意。另外,状态代码也很容易理解,因为它们不会从应用程序(Web服务)更改为另一个

2020-07-26