jQuery Ajax cors IE10 不工作

Posted

技术标签:

【中文标题】jQuery Ajax cors IE10 不工作【英文标题】:jQuery Ajax cors IE10 not working 【发布时间】:2014-01-05 04:28:04 【问题描述】:

我正在使用 jQuery 向不同的域发出 post 请求。这在 FF、Chrome 和 IE7、8 和 9 上运行良好。我没想到不能在 IE10 上运行..有什么想法吗?这是代码

var url = "http://xxxxxxx/xxxx.php?";

jQuery.ajax(
    type: "POST",
    async: false,
    crossDomain: true,
    contentType: "application/json; charset=utf-8",
    url: url,
    dataType: "json",
    data: JSON.stringify(params),
    success: function (data) 
        callback.call(Test, data, optional);
    ,
    error: function ( jqXHR,  textStatus,  errorThrown) 
        alert(textStatus + errorThrown);
    
);

【问题讨论】:

请检查这个答案,看看是否有帮助:***.com/questions/16956295/… 请参考这个..***.com/questions/3362474/… 我仍然找不到答案。我尝试不使用 jquery,因为 ie10 本身支持 cors,但我仍然得到“访问被拒绝”..所以它是否支持?我会尽快发布代码 【参考方案1】:

也许 IE 中的安全区域与此有关? https://msdn.microsoft.com/en-us/library/ms537505(VS.85).aspx#xdomain

Tldr;如果 IE 使用 Native XMLHTTP,并且如果两个域位于某些不同的安全区域中,则 IE 可能不允许 CORS。

【讨论】:

以上是关于jQuery Ajax cors IE10 不工作的主要内容,如果未能解决你的问题,请参考以下文章

CORS 请求在 Firefox 中中止,而不是在 Chrome 或 IE 中

在 IE10 的 AJAX CORS 请求中添加自定义标头时,CORS 请求中止

前端ajax+cors+post跨域对于IE兼容性分析

带有 CORS 和 IE9 的 ASP Web API POST 请求(XDomainRequest 对象)

jQuery AJAX GET html 数据 IE8 不工作

跨域的 jQuery AJAX 对于 Chrome 等工作正常,但不能在 IE10 中发送数据,也不能在 IE <= 9 中发送请求