在 XDomainRequest 或 ActiveXObject('Microsoft.XMLHTTP') 中设置标头

Posted

技术标签:

【中文标题】在 XDomainRequest 或 ActiveXObject(\'Microsoft.XMLHTTP\') 中设置标头【英文标题】:Setting headers in XDomainRequest or ActiveXObject('Microsoft.XMLHTTP')在 XDomainRequest 或 ActiveXObject('Microsoft.XMLHTTP') 中设置标头 【发布时间】:2011-02-09 01:47:06 【问题描述】:

我正在尝试做这样的事情(符合 W3,DOM):

xhr.setRequestHeader( 'X-Requested-With', 'XMLHttpRequest' );

对于ActiveXObject('Microsoft.XMLHTTP')XDomainRequest (IE8)。我没有运气在微软文档甚至谷歌的任何地方找到它。知道如何实现这一目标吗?

【问题讨论】:

【参考方案1】:

参考这篇文章 http://blogs.msdn.com/b/ieinternals/archive/2010/05/13/xdomainrequest-restrictions-limitations-and-workarounds.aspx 看第三点 3. 请求中不得添加自定义标头

您不能将自定义标题添加到 XDR 对象。希望这会有所帮助。

【讨论】:

MSIE 甚至不应该存在。我讨厌那个浏览器。总是破坏网络。我只用它来下载其他浏览器。而且我什至看不出XDomainRequest 有什么用。 @chx101,如果它不存在,我们将无法选择其他人:)。 @chk101:虽然我意识到多年后批评 MSIE 的“缺失”功能很有趣也很容易,但绝对值得记住的是,第一个 CORS 工作草案是在 2009 年 3 月 17 日推出的——就在 IE8 发布前两天。它直到 2013 年 12 月才成为 W3C 提议的建议。作为比较,Firefox 直到 2009 年夏季(版本 3.5)才在生产版本中支持 CORS。 我无法就您的感受向您提供建议——我只是概述五年前发生的历史。 (人们有时会忘记事情发生的顺序) 请注意,Firefox 在工作草案推出后不到半年就支持了 CORS。 IE 直到 2012 年 9 月 IE10 才支持凭据请求。

以上是关于在 XDomainRequest 或 ActiveXObject('Microsoft.XMLHTTP') 中设置标头的主要内容,如果未能解决你的问题,请参考以下文章

IE8/9 中带有 jQ​​uery 和 XDomainRequest 的 CORS

在HTA应用程序中使用XDomainRequest对象

XDomainRequest 上的访问被拒绝错误

为什么ie8 CORS / XDomainRequest不发送cookie?

IE XdomainRequest CORS 问题

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