首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >XDomainRequest vs XMLHTTPRequest

XDomainRequest vs XMLHTTPRequest
EN

Stack Overflow用户
提问于 2014-08-05 22:42:43
回答 1查看 11.4K关注 0票数 15

我们正在使用PixiJS创建一个应用程序,其中包含一个动态json加载器。

它使用以下命令加载.json文件:

代码语言:javascript
复制
if(window.XDomainRequest)
{
    this.ajaxRequest = new window.XDomainRequest();
}
else if (window.XMLHttpRequest)
{
    this.ajaxRequest = new window.XMLHttpRequest();
}
else
{
    this.ajaxRequest = new window.ActiveXObject('Microsoft.XMLHTTP');
}

这似乎适用于任何地方,除了windows phone和IE。但是,如果我用XDomainRequest替换XMLHttpRequest,它工作得很好。

最后,有人能解释一下XDomainRequest和XMLHTTPRequest之间的区别吗?哪一个应该优先于另一个?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-08-05 23:50:17

XDomainRequest是在IE8和9中拥有支持CORS的XHR的唯一方式。在IE8的时候,微软决定推出他们自己的CORS XHR,而不是现在在IE10中使用的标准CORS XMLHttpRequest。从IE10开始,XDomainRequest就被移除了(编辑器:参见注释)。

只有在IE8/9中需要CORS时才应该使用XDomainRequest。XDomainRequest不能与XMLHttpRequest完全互换,接口也不完全相同。一个例子是它不支持onreadystatechange事件。因此,如果你想像问题中那样在它们之间切换,你需要确保使用onload而不是onreadystatechange,并检查任何其他功能是可互换的。

在这个answer中有一个用法示例。

票数 16
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25141650

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档