Internet explorer 为什么Firefox的请求头与IE的请求头不同?
我不明白为什么同一个网页和同一个请求会为Firefox和Internet Explorer创建不同的请求头 例如,IE有一些授权信息,而FF在我看来似乎缺少这些信息 导致不同浏览器的请求头不同的主要原因是什么? (我想这会给我一个线索,为什么我的WCF服务调用在FF中失败,但在IE中工作) 适用于Firefox 用于Internet ExplorerInternet explorer 为什么Firefox的请求头与IE的请求头不同?,internet-explorer,http,firefox,httprequest,request-headers,Internet Explorer,Http,Firefox,Httprequest,Request Headers,我不明白为什么同一个网页和同一个请求会为Firefox和Internet Explorer创建不同的请求头 例如,IE有一些授权信息,而FF在我看来似乎缺少这些信息 导致不同浏览器的请求头不同的主要原因是什么? (我想这会给我一个线索,为什么我的WCF服务调用在FF中失败,但在IE中工作) 适用于Firefox 用于Internet Explorer 您的Firefox版本似乎支持CORS(),而您的IE版本则不支持。您正在比较完全不同的请求。请解释你真正的问题。阅读RFC以了解每个标题。那么为
您的Firefox版本似乎支持CORS(),而您的IE版本则不支持。您正在比较完全不同的请求。请解释你真正的问题。阅读RFC以了解每个标题。那么为什么在我使用相同HTML的地方请求不同呢(我不知道,html与此有什么关系?CodeCaster:html(+JS)驱动浏览器,然后浏览器发出下一个请求。pencilCake:我已经回答了你的问题;见下文。@JulianReschke我知道,我之所以这样问是因为OP没有显示任何发出HTTP请求的代码,只是请求本身。我想是因为你发布到的服务器没有正确回复CORS飞行前请求看吧。但出于某种原因,它似乎可以为IE9实现这一点。感谢JulianIE9实现“XDR”的观点(),这可能会导致它的行为有所不同。在一天结束时,您需要提供更多信息。您似乎试图从XHR进行跨域发布,对吗?正确!我尝试将请求发布到位于不同域的WCF服务。当我设置jQuery.support.CORS=True时,IE9可以毫无问题地完成此操作;但它失败了乍一看,我觉得IE9隐式地实现了XDR,但对于以前的版本,我可能需要在代码中显式地实现它。
OPTIONS http://.....
Host: foo.bar.uk
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:18.0) Gecko/20100101 Firefox/18.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Origin: null
Access-Control-Request-Method: POST
Access-Control-Request-Headers: content-type
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache
POST http://.....
Accept: */*
Accept-Language: en-us
Content-Type: application/json
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; WOW64; Trident/5.0; SLCC2; .NET CLR 2.0.50727; .NET4.0C; .NET4.0E; InfoPath.3; .NET CLR 3.5.30729; .NET CLR 3.0.30729)
Host: foo.bar.uk
Content-Length: 19...
Connection: Keep-Alive
Pragma: no-cache
Authorization: Basic xyxzyxyxzyxyzyxz
{"Foo":"bar","KungFoo":"Judo",...}