我有REST方法来更新用户个人资料。如果某些参数无效,系统应返回哪个状态码?或者,例如,如果旧密码和DB中的密码不相等,则更改密码。400错误的请求?
您所描述的内容可以并且应该使用两种不同的响应代码来处理,如Richardson和Ruby 的Book RESTful网络服务中所述:
400错误的要求
当客户端与PUT或POST请求一起提交表示形式并且该表示形式具有正确的格式时,通常使用此方法,但这没有任何意义。因此,将其用于缺少或无效的参数是完全可以的。
但是400是通用的客户端错误代码,您肯定应该在响应正文中向客户端提供一些其他信息。
409冲突
服务器无法执行的任何请求,因为它将使一个或多个资源处于不一致状态。因此,当用户尝试更改其密码并且与您描述的旧密码比较失败时,我将使用此响应代码。
您也可以查看此讨论的REST HTTP状态代码,以确认验证失败或重复无效。
| 归档时间: |
|
| 查看次数: |
2375 次 |
| 最近记录: |