在更改密码请求中,如果旧密码不正确,正确的回答是什么?
我在想401未经授权?还是400错误请求?
答案 0 :(得分:1)
这有点棘手,因为我认为您可以为两者中的任何一个进行论证,而且我还认为409
和422
可能会引起争议。
最终,如果通用客户端可以对响应做一些有用的事情,那么我认为使用更具体的HTTP状态代码非常重要。因此,在这种情况下,我认为这并不重要。
我认为我很想不使用401,因为我将其与Authorization
标头紧密相关,并且在这种情况下您可能不使用它。
422
或400
是最好的。这完全基于观点。这些都表明请求有问题(422
更加具体:格式没有问题,但是发送到服务器的实际值有问题)。
409
有时用于指示当前请求有效,但是服务器的当前状态阻止该请求成功。假设服务器的当前状态是“当前密码是其他密码”,则409
可能是合适的。
最终,我认为没有什么是 really ,这不是真正的重要,但我的投票将首先进行422
,然后是{{1 }}。
一些来源(前几个是我的,最后一个链接来自http规范的一位作者)
答案 1 :(得分:0)
答案与登录页面的答案相同。
现在,那是什么答案?在这个问题上有一些分歧,但我认为是200
。我在this answer中对此进行了讨论,并链接到其他一些观点。