什么是正确的HTTP代码来表示"未登录"?

时间:2016-05-27 13:32:32

标签: http authentication authorization http-response-codes

如果有人试图访问只有在他们登录后才能访问的内部页面,应该返回什么错误代码? 403似乎不对,因为他们没有经过身份验证。但是,401也不起作用,因为这意味着他们可以使用我们没有使用的基本身份验证登录。

通过WWW-Authenticate标头以外的方法进行身份验证时,使用403代替401是否正确?如果没有,应该使用什么代码?

注意:我发现了一些类似的问题,但他们似乎都在询问使用http basic auth的网站,而不是其他任何身份验证方法。

1 个答案:

答案 0 :(得分:0)

状态码401并不表示您支持基本身份验证。这意味着服务器无法提供请求,因为缺少相应的凭据。

服务器可以发回WWW-Authenticate标头以指示它支持的凭据类型。例如,如果您只支持JWT代币,则会发回“承载”。

相关问题