HTTP 1.1规范 中提到:
10.4.4 403 Forbidden
服务器理解了请求,但拒绝执行它。
授权也无济于事,不应重复该请求。[...]
这是否仅适用于基本授权,如 WWW-Authenticate: Basic
?是否应对其他用户可能通过基本HTTP身份验证之外的方式(例如通过会话cookie、OpenID等)访问被拒绝的资源发出403呢?
我问这个问题是因为HTTP 401说...
响应必须包含一个
WWW-Authenticate header
字段
...我不确定是否应该添加像 WWW-Authenticate: Custom
这样的标头。
许多人似乎在许多情况下都使用403,即使简单的cookie可以使资源可用。他们都错了吗?
WWW-Authenticate
的要求不应该被过于字面理解,这是规范作者的良好意图,但世界上已经发明了许多不属于 HTTP 认证的身份验证方式。 - hobbsWWW-Authenticate
是否会触发任何浏览器的 HTTP 登录对话框... 这个问题 让我想到 Firefox 会呈现这样的登录对话框,但我没有得到任何东西。此外,您的 IP 地址和用户代理难道不是一种松散的“凭据”形式吗? - Camilo Martin