无效数据的适当REST响应代码是什么?
我有REST方法来更新用户配置文件。 如果某些参数无效,系统应该返回哪个状态码? 或者,例如,要更改密码,如果旧密码和DB中的密码不相等。 400错误的请求?
您描述的内容可以并应该使用来自Richardson和Ruby的RESTful Web服务中描述的两种不同的响应代码进行处理:
400错误请求
当客户端提交表示以及PUT或POST请求时,通常会使用这种表示形式,并且表示形式是正确的,但没有任何意义。 所以将它用于缺失或无效的参数是完全可以的。
然而,400是通用客户端错误代码,您应该在响应主体中为客户端提供一些其他信息。
409冲突
任何不能由服务器执行的请求,因为它会使一个或多个资源处于不一致的状态。 所以我会在用户尝试更改密码时使用此响应代码,并按照您所描述的与旧密码的比较失败。
你也可以看看这个讨论REST HTTP状态代码的失败验证或无效重复。
链接地址: http://www.djcxy.com/p/45403.html上一篇: What is the appropriate REST response code for invalid data?