1

我已经构建了一个脚本来使用 jquery 的 ajax 函数来拉一个 xml 文件跨域。xml 文件是 iTunes 的 RSS 提要。在创建 xml 文件的 php 中,我添加了这个:

header('Access-Control-Allow-Origin: *');

我已经调查了这个问题,它适用于除 IE 之外的所有浏览器。据说它可以在 10 中工作,但我只测试了 9。我在网上查了一下,发现也许我可以破解一个 XDomainRequest,但它不是很稳定并且有很多限制,让我觉得它不值得它。

如果对于 IE 9 及以下版本无法解决此问题,那么我将简单地进行功能检测并建议用户更新到 ie 10 或下载另一个浏览器。

有谁知道在 IE 9 及以下版本中拉 xml 跨域的稳定方法?

4

1 回答 1

3

最近我自己经历了这个,我发现以下 jQuery 插件运行良好:

https://github.com/MoonScript/jQuery-ajaxTransport-XDomainRequest

API 与常规 jQuery ajax 无缝协作,我只在 IE8 或 IE9(通过 requirejs)中拉入脚本。

XDomainRequest 需要记住的几件事

  • 无法设置自定义标头(因此,如果您要传递数据,则必须是查询字符串)
  • 无法跨越安全边界(即,无法从 HTTPS 转到 HTTP)

除了上述两点之外,我没有遇到任何问题,并且代码已经在生产环境中运行了几周。

于 2013-02-19T00:53:05.800 回答