CrossDomain在IE中调用

时间:2013-06-18 08:16:01

标签: javascript jquery ajax internet-explorer cross-domain

除IE之外的所有浏览器都满足请求。找不到这个问题的实际答案。 (如果你不发誓不好看)。我需要改变或添加什么?我使用了window.XDomainRequest,但它没有帮助。

我的要求:

$.ajax({
                type: "GET",
                url: url,
                crossDomain: true,
                success: function(xml) {
                    processXml(xml, config);
                },
                error: function(jqXhr, textStatus, errorThrown) {
                    var errorMsg = "Request on url: " + url + " failed: " + textStatus + " error:" + errorThrown;
                    alert(errorMsg);
                }
            });

1 个答案:

答案 0 :(得分:0)

IE不完全支持CORS。它不支持使用withCredentials属性发送CORS请求。只有当xhr对象中存在withCredentials属性时,jQuery才会支持跨域请求。

在IE中执行以下代码,您将获得'false'(不支持)。

alert(jQuery.support.cors);

更新1:

它似乎完全IE 10 supports。解决方法,如果您在子域(foo.example.com - > blah.example.com)之间共享资源,则可以在iFrame中发起请求并使用Javascript same origin policy来共享资源。