gpt4 book ai didi

javascript - IE8/IE9 中的跨域 header

转载 作者:行者123 更新时间:2023-12-03 21:51:50 24 4
gpt4 key购买 nike

由于 jQuery ajax 不适用于 CORS/IE,因此我使用 XDomainRequest 从另一台服务器检索数据。工作正常,但我想发送一些 header (“身份验证”、“内容类型”)。

是否有机会在 XDomainRequest 中添加/更改 header ?

或者有人知道解决方法吗?

最佳答案

这就是我们为 IE 所做的。

如果您可以控制目标域,请在那里托管一个(静态)html 文件。使用 iframe 包含 html。

现在这个 iframe 实际上可以访问本地域,因此您可以在父框架和子框架之间进行通信以获得所需的内容。

这对我们来说比 XDomainRequest 效果好得多。

window.postMessage是设置通信的最佳方式:

但我很确定它是从 IE8 才开始工作的。如果您还需要较旧的浏览器,则必须使用不同的 hack。

在我们的例子中,这是我们的 3 层系统:

  1. CORS,适用于支持它的浏览器
  2. iframe 和 window.postMessage 作为主要后备
  3. 服务器端代理脚本作为辅助后备

所有这些选项都运行良好、可靠并且感觉不像黑客。次要后备几乎从未使用过。

请记住,“身份验证” header 特别特殊,无论如何,我不会对它在某些情况下被阻止感到震惊。我们添加了一个自定义 header “X-Authenticate”,因为它一直通过。

关于javascript - IE8/IE9 中的跨域 header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9652364/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com