C# 在响应头内容编码:gzip中存在,但在请求头接受编码:gzip中缺少deflate
请求标头中缺少接受编码:gzip,deflate,但响应标头中存在内容编码:gzip。是否导致压缩失败。如果是,如何避免 请求URL: 请求方法:获取 状态代码:200正常200正常 请求头 Accept: */* Referer: somthing.comsomthing.aspx User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/38.0.2125.111 Safari/537.36 X-DevTools-Emulate-Network-Conditions-Client-Id: 2D3ED9B5-95BD-4984-9EEE-405C2889F11E 接受:*/* 推荐人:somthing.comsomhing.aspx 用户代理:Mozilla/5.0(Windows NT 6.1;WOW64)AppleWebKit/537.36(KHTML,如Gecko)Chrome/38.0.2125.111 Safari/537.36 X-DevTools-Emulate-Network-Conditions-Client-Id:2D3ED9B5-95BD-4984-9EEE-405C2889F11E 响应头 Accept-Ranges: bytes Content-Encoding: gzip Content-Length: 884 Content-Type: application/x-javascript Date: Tue, 28 Oct 2014 11:09:13 GMT ETag: "0ac99ce3e9fcf1:0" Last-Modified: Mon, 14 Jul 2014 08:37:12 GMT Server: Microsoft-IIS/8.0 Vary: Accept-Encoding X-Powered-By: ASP.NET 接受范围:字节 内容编码:gzip 内容长度:884 内容类型:应用程序/x-javascript 日期:2014年10月28日星期二11:09:13 GMT ETag:“0ac99ce3e9fcf1:0” 最后修改:2014年7月14日星期一08:37:12 GMT 服务器:Microsoft IIS/8.0 改变:接受编码 X-Powered-By:ASP.NET 发件人: 没有Accept Encoding标头字段的请求意味着 用户代理没有关于内容编码的首选项。虽然 它允许服务器在响应中使用任何内容编码 并不意味着用户代理将能够正确处理 所有编码 简而言之:如果您指定不接受编码,服务器向您发送压缩内容是合法的(尽管这是不明智的)。似乎没有可靠的方法告诉web服务器它绝对不应该压缩。您可以尝试C# 在响应头内容编码:gzip中存在,但在请求头接受编码:gzip中缺少deflate,c#,asp.net,iis-8,C#,Asp.net,Iis 8,请求标头中缺少接受编码:gzip,deflate,但响应标头中存在内容编码:gzip。是否导致压缩失败。如果是,如何避免 请求URL: 请求方法:获取 状态代码:200正常200正常 请求头 Accept: */* Referer: somthing.comsomthing.aspx User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/38.0.2125.
接受编码:*;q=0
或接受编码:identity
,但对这一点的支持在web服务器上并不普遍,代理也可能会把事情搞砸
最后,如果压缩后的内容以这种方式返回,您可能只需要简单地处理它就更好了——客户机没有理由不支持压缩,而且压缩库是免费提供的。是谁根据代码发出请求的,是随机浏览器还是您?为什么缺少请求头?是否缺少整个接受编码头,或者只是“gzip,deflate”部分?客户端是否能够解码响应,取决于客户端。您可以通过提供适当的头来避免这种情况,前提是服务器尊重这些头。总之:你的问题太模糊了。请详细说明。我不知道是谁发出请求,请求头是存在的,但在请求头接受编码中:缺少gzip部分。@有问题的CodeCaster详细说明,如果有,请查看并给出解决方案