我试图从几个域到一个处理请求的一个
AJAX调用.通过设置处理服务器上的标题,可以轻松地在Firefox和Chrome中启用跨域:
header("Access-Control-Allow-Origin: *");
但这并不意味着在Internet Explorer中启用它.当我尝试:
httpreq.send('');
它停止,错误访问被拒绝.
如何在Internet Explorer中启用?
解决方法
我不相信你可以直接在Internet Explorer中这样做.你有几个选择:
>在您所控制的可以转发Ajax请求的服务器上设置代理转发脚本.确保它只转发到您需要的相应目的地,以便您不会变成匿名中继.
>使用document.domain技巧.基本上,您需要创建一组iframe,每个需要Ajax调用的服务器一个.在每个iframe中,将document.domain属性设置为与发送Ajax请求所需的域完全匹配.至于如何填充必要的数据,请在设置document.domain之前使用DOM操作.请注意,此技巧要求目标服务器位于原始的子域中.更多在this article,与例子.