jan*_*agn 7 javascript xmlhttprequest cross-domain xdomainrequest
我对XMLHttpRequest和XDomainRequest转世非常困惑,并希望得到一些帮助.所以这是我的发现:
这个清单并不完整,正如我所说,这是基于我的发现.然而,这是混乱开始的地方.我有一个应用程序,通过Ajax我必须:
由于上述所有原因,我无法使用XDomainRequest执行此操作:
然而,如果在IE8和IE9中我实例化XMLHttpRequest而忽略了这里描述的所有这些检查,那么一切正常!好吧我没有得到onload事件,我不确定"withcredentials"的故事是什么,但IE8和IE9似乎没有问题使用XMLHttpRequest进行跨域.但为什么?这些都不矛盾吗?我只是想弄清楚这个问题,因为我担心在IE8和IE9中使用XMLHttpRequest可能会在某些时候回来咬人.当有人可以使用一个而不是另一个时,我可以要求一个明确的例子吗?更好的是,是否有任何更新IE8和IE9解决了这个问题?
任何帮助将非常感谢Yiannis
首先注意这一点:
\n\n\n\n\nIE11 弃用了 XDomainRequest 对象,并且它在 IE11 Edge 模式下不可用。
\n
1) 什么是 XDomainRequest 以及为什么 IE 有这个对象?几年前,XMLHTTPRequest 2W3C 正在制定规范,所有浏览器构建级别 2 高于XMLHTTPRequestMicrosoft 创建的XDomainRequest. 所以XDomainRequest不是一个子类,这是一个非标准的IE功能。
2)是的,XDomainRequest 缺少“withCredentials”。因为:
\n\n\n\n\n为了防止滥用用户\xe2\x80\x99s环境权限(例如cookie、HTTP凭据、客户端证书等),请求将被剥离cookie和凭据,并将忽略任何身份验证质询或Set-Cookie指令HTTP 响应。XDomainRequests 不会在先前经过身份验证的连接上发送,因为某些 Windows 身份验证协议(例如 NTLM/Kerberos)是基于每个连接的,而不是基于每个请求的。
\n
4)
\n\n\n\n\n截至 2014 年,XDomainRequest 似乎根本不发送任何 Content-Type\n 标头。我不清楚这是什么时候改变的。
\n
等等......\n我发布这个答案只是为了历史。
\n\n不要使用 XDomainRequest。这是丑陋且错误的非标准功能。
\n\n更多信息请点击这里:
\n\n| 归档时间: |
|
| 查看次数: |
2091 次 |
| 最近记录: |