我读过What HTTP status response code should I use if the request is missing a required parameter?,但没有特别询问标题,似乎没有达成共识。
此问题的上下文假定验证成功。我目前偏爱400(虽然这感觉不对,因为这不是“格式错误的语法”)或403.鉴于403的描述:
服务器理解请求,但拒绝履行请求。 授权无效,请求不应重复。 如果 请求方法不是HEAD,服务器希望公开 为什么请求没有得到满足,它应该描述原因 对于实体的拒绝。
这对我来说最有意义。
有人可以赐教吗?感谢。答案 0 :(得分:46)
400错误请求
请求中存在用户错误。与403不同,客户端应该允许重复他们的请求,但仅在修改后:
10.4.1 400错误请求 由于语法格式错误,服务器无法理解该请求。客户不应该在没有修改的情况下重复请求。
修改强> 的
正如Mark Reed在评论中指出的那样,403说:“你发给我的东西没有错。你有适当的授权,语法是有效的。我只是不想做你所要求的。”
你以粗体显示的部分只是说,如果服务器如此选择,它可以告诉客户端它为什么不想满足请求。