我遇到了这个问题.我想这是某种IE错误,但我想确定.
所以问题是.为什么IE10 XmlHttpRequest.status返回0而不是401?
var xmlhttp=new XMLHttpRequest();
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4)
{
document.getElementById("rescode").innerHTML="Request completed with status: "+xmlhttp.status;
}
}
xmlhttp.open("GET","http://hosting.gregy.cz/cors/",true);
xmlhttp.send();
Run Code Online (Sandbox Code Playgroud)
请参阅此处的plunker:http://plnkr.co/edit/E2lCflPDHHaQi7t79IeM?p = preview
此代码触发CORS请求,该请求始终返回401. Firefox和chrome在状态属性中正确返回401,但IE10返回0.此问题会破坏我用于项目的身份验证处理方法.
谢谢
编辑:
我用onload和onerror事件处理程序修改了plunker(来自monsur评论的提示),但结果仍然相同.
我还确保IE10没有选择兼容模式.(来自cernunnos评论的提示)