我有一个XMLHttpRequest,我发送的是登录到远程服务器。我使用登录参数(用户名和密码)并将其作为json发送。这是我的代码:
var json_data = JSON.stringify({
"method": "login",
"user_login": user,
"password": password
});
var post_url = "server_url";
var crossRequest = new XMLHttpRequest();
crossRequest.open('POST', post_url, true); //Async
crossRequest.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;charset=UTF-8");
crossRequest.withCredentials = true;
crossRequest.onreadystatechange = function () {
if (crossRequest.readyState == 4) {
alert("Logged in!");
}
}
crossRequest.onabort = function () {
alert("ERROR: Aborted.");
}
crossRequest.onerror = function () {
//alert("Error occurred, status: " + crossRequest.status);
}
crossRequest.onload = function () {
if (crossRequest.status == 200)
{
alert("Logged in!");
}
else
{
alert("An error occurred, status: " + crossRequest.status);
}
}
crossRequest.send(json_data);
它在Chrome中运行得很好,但在IE 11中它总是中止,似乎在发送任何内容之前:
可能导致这种情况的原因,我该如何解决?
答案 0 :(得分:2)
似乎就像现有的IE11问题一样
IE10/IE11 Abort Post Ajax Request After Clearing Cache with error "Network Error 0x2ef3"
https://connect.microsoft.com/IE/feedback/details/852785/ie10-network-error-0x2ee4-https-proxy-ajax
答案 1 :(得分:0)
•按Alt,然后转到工具,如果尚未关闭,请关闭企业模式
•转到工具 - >互联网选项 - >安全 - >将所有区域重置为默认级别
•转到工具 - >互联网选项 - >高级 - >恢复高级设置
•转到工具 - >互联网选项 - >一般 - >删除 - >临时Internet文件和网站文件。