Chrome/Firefox/ie10+ 如何处理跨协议 HTTP 请求?

Chrome/Firefox/ie10+ 如何处理跨协议 HTTP 请求?

我一直在写一个利用在线 API 的网页,仅有的输出 JSON,并且仅有的由 SSL 服务器提供。(这是 Eventbrite API)。而我的个人 Web 服务器不支持 SSL。

当我使用 jQuery HTTP GET 请求(我也使用过直接 AJAX 和 XDomainRequest 查询)来将响应解析到我的网页中时,出现错误:脚本 5:访问被拒绝。这仅发生在 IE9 及更低版本上,所有其他浏览器均运行正常。

这让我不禁想问,为什么微软在 IE9 及更低版本(而不是 10+ 版本)中实现了这种保护,而为什么谷歌和 Firefox 没有提供这种保护。是不是因为 Chrome/Firefox 的沙盒可以防止潜在的恶意脚本在浏览器之外运行?幕后到底发生了什么?

相关内容