我在这个HTTPCombiner中看这个方法:
private bool CanGZip(HttpRequest request)
{
string acceptEncoding = request.Headers["Accept-Encoding"];
if (!string.IsNullOrEmpty(acceptEncoding) &&
(acceptEncoding.Contains("gzip") || acceptEncoding.Contains("deflate")))
return true;
return false;
}
如果返回true,则使用GZipStream压缩响应.这是正确的吗?
解决方法:
这是两种不同的算法:
> http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.3
> http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.5
一些代码在这里:
因此,根据协议,它是不对的,就好像浏览器说“使用deflate给我内容”,你不应该发回gzip.