HTTP为缺少的身份验证定义状态401 Unauthorized,但此状态仅适用于HTTP身份验证。当未经授权的请求发生时,我应该使用基于会话cookie的系统返回什么状态?
答案 0 :(得分:25)
正式的,403 Forbidden是正确的回应。它被定义为
授权无效,请求不应重复。
令人困惑的部分可能是“授权无效”,但它们的确意味着“HTTP身份验证”(WWW-Authenticate)
答案 1 :(得分:5)
403我认为技术上是正确的(如果您正在实施自定义API /协议,则可能最有效)。
401是不合适的,因为它引用了具有WWW-Authenticate标头的授权,而会话cookie不是。
如果这是一个面向公众的网站,您试图根据会话cookie拒绝访问,200具有适当的主体以指示需要登录或302临时重定向到登录页面通常是最佳的。< / p>
答案 2 :(得分:-1)
您可以使用测试条件并传递
错误代码:401.1-Logon失败。登录尝试失败,可能是因为用户名或密码无效。
专门用于错误密码或不匹配的用户名和密码。 希望这会对你有所帮助。