我们有一个休息服务,我们用它来验证我们的客户。在某些情况下,我们希望向客户报告更多信息,而不仅仅是“授权失败”。例如,如果他们的帐户在多次尝试后被锁定,我们将向客户报告他们的帐户已被锁定。在其他情况下,由于业务用例,我们将向他们报告其他问题。即使用户名/密码正确,这些问题中的任何一个都会拒绝用户登录。
我认为在这些情况下返回401 Authorized可能是不正确的,但是在查看了 http 状态代码后,我不确定哪种返回代码是合适的。也许是403 Forbidden?意识到我必须将问题的措辞返回给客户。