如果有人试图访问只有在他们登录后才能访问的内部页面,应该返回什么错误代码? 403似乎不对,因为他们没有经过身份验证。但是,401也不起作用,因为这意味着他们可以使用我们没有使用的基本身份验证登录。
通过WWW-Authenticate标头以外的方法进行身份验证时,使用403代替401是否正确?如果没有,应该使用什么代码?
注意:我发现了一些类似的问题,但他们似乎都在询问使用http basic auth的网站,而不是其他任何身份验证方法。
答案 0 :(得分:0)
状态码401并不表示您支持基本身份验证。这意味着服务器无法提供请求,因为缺少相应的凭据。
服务器可以发回WWW-Authenticate标头以指示它支持的凭据类型。例如,如果您只支持JWT代币,则会发回“承载”。