我已经找到了很多关于HTTP状态码含义的答案和解释。我的问题是关于向登录端点进行POST请求的情况,例如要求用户名和密码,以及提供不正确的用户名和密码的情况。
一些想法:
400 Bad Response 我认为这个代码不合适,因为它表示该请求在语法上不正确,服务器无法理解,而这在这里并不是这个情况。登录数据只是语义上不正确。
401 Unauthorized 对我来说,这是一个棘手的部分。 如果只有需要身份验证头的请求才能出现401,则不正确。但是,如果可以在所有需要身份验证(无论是头还是身体)的请求上出现401,则401是候选项。
403 Forbidden 通常,如果用户已经被系统认证并知道该资源但被禁止访问,则返回403。 在登录之前,用户肯定没有被认证。我不知道是否存在未经身份验证的用户的403语义。
我很乐意听到您的答案或想法。