如果您希望传达用户未登录的信息,是否可以返回HTTP 401状态以响应 AJAX 调用,即使登录机制是基于表单而不是基于 HTTP(基本、摘要等) ?
这里的答案表明应该使用 401: https ://stackoverflow.com/a/6937030/2891365
这篇文章显示了一个使用 401 进行 AJAX 响应的实际示例:http ://www.bennadel.com/blog/2228-some-thoughts-on-handling-401-unauthorized-errors-with-jquery.htm
但是,针对 HTTP/1.1 的 RFC 2616明确指出需要一个特殊的标头,这意味着它只能用于 HTTP 身份验证。
10.4.2 401 未经授权
该请求需要用户身份验证。响应必须包含一个
WWW-Authenticate
标题字段(第 14.47 节),其中包含适用于所请求资源的质询。
我想我可能可以发送一个虚假的标题,WWW-Authenticate: WebForm
并且仍然符合 W3C 规范,但感觉它违反了WWW-Authenticate
标题的精神。
最后,我似乎找不到明确说明 HTTP 401 是否允许用于 AJAX 响应的权威来源。有没有我错过的权威来源?