javascript - 哪些浏览器允许使用 Access-Control-Allow-Origin : *? 进行跨域 ajax 调用

标签 javascript ajax rest jsonp

哪些浏览器允许使用 Access-Control-Allow-Origin: * 进行跨域 ajax 调用?我正在设置一个 REST 服务并试图决定我是否需要支持 JSONP 以允许跨域 javascript 访问,或者它是否足以设置 Access-Control-Allow-Origin header 。

最佳答案

Here's one reference建议在现代浏览器中的支持是合理的(但请参阅本答案末尾的注释),假设客户端代码有意处理 IE 问题。 (IE8 和 IE9 支持 CORS,但不通过 XMLHttpRequest ——你必须使用 XDomainRequest,值得注意的是,jQueryPrototype 在他们的 ajax 包装器中都没有为你做这件事——我不知道关于 other libraries 。IE10 终于做对了。)该页面本质上说 CORS在以下桌面版本中受支持:

  • IE8+(通过 XDomainRequest),IE10+(正确)
  • 火狐 3.6+
  • Safari 4.0+
  • Chrome 6+
  • 歌剧 12.1+

  • ...也
  • iOS Safari 3.2+
  • 安卓浏览器 2.1+

  • 你必须问问自己你的目标市场是什么以及他们是否可能仍在使用旧版本的 IE,因为 it matters quite a lot你的目标是谁。但总体而言,您(目前)可能仍然希望查看 JSONP 接口(interface)——即使在美国大部分本土市场中,IE6+IE7 = 大约 20% 的用户。我不知道有多少网站可以忽略五分之一的市场。 :-) 如果你看看企业用户,或者亚洲、非洲或中美洲的用户,这个数字会显着上升。上述情况在 2010 年是正确的。在 2013 年,中国确实是唯一一个坚持使用 IE6(>24%)的国家。在全局范围内,IE6 和 IE7 用户已经转向 IE8 和 IE9,甚至大型企业和政府用户也终于“明白”了安全风险。 IE8 将伴随我们一段时间(因为 IE 在 Windows XP 上的使用率很高),但您可以打赌,使用 IE9 的近 20% 将很快在 IE10 上使用。

    关于javascript - 哪些浏览器允许使用 Access-Control-Allow-Origin : *? 进行跨域 ajax 调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4403865/

    相关文章:

    javascript - 当用户再次向后和向前导航时强制刷新/重新加载

    html - Jersey - 在 POST 上使用 XML 和 HTML

    javascript - 我可以覆盖/重新定义 "global"Javascript 函数,如 confirm() 和 alert() 吗?

    javascript - 如何从 powerup 中访问 trello API?

    javascript - 在传单中隐藏工具提示以获得缩放范围

    javascript - 无法读取 Promise 内未定义的属性 'data'。在一个非常奇怪的地方

    javascript - 如何统计其父元素第一行的元素个数

    javascript - 如何使用 jQuery/Ajax/PHP 显示所有验证错误消息?

    java - 如何使用 Geoserver 部署现有的 REST 服务

    javascript - 如何保护 AJAX 应用程序中的私有(private) REST API