我在IE8中使用XDomainRequest
&9向服务器发送请求。在其他浏览器中使用XMLHttpRequests
,同时发送Origin
和Referer
标头,并且看起来像这样:
Origin: http://www.example.com
Referer: http://www.example.com/mypage/index.htm
但是XDomainRequest
只发送Origin(所以我看不到完整的调用URL)。是否有办法强制它也发送Referer?我试图避免将其作为查询字符串或POST参数发送。
我知道XDomainRequest
不允许自定义头,但我希望,因为Referer是一个标准头,可能有一些方法来启用它。
我的一个合作开发者遇到了这个问题,他们调用的CORS服务需要"安全"的标头,但是IE不能发送标头。我们没有找到IE8/9报头问题的解决方案,除了:
- 服务不需要报头
- 有一个代理,将你需要的头附加到你的请求。
选项2解释是-设置一个web代理,它将接受没有报头的呼叫。然后,它进行CORS调用并将标题添加到请求中。它接收有效负载并将其转发到您的请求。
无论如何,我们选择了选项1