2012年2月10日更新:
zOompf对这个主题进行了非常深入的研究,此处有详细信息。该研究结果胜过以下任何发现。
2010年9月11日更新:
已经为此创建了一个测试平台此处
HTTP 1.1中GZIP和DEFLATE(zlib)的定义提供了一些背景信息:
" 'Gzip'是gzip格式,而'deflate'是zlib格式。他们应该可能称第二个为“zlib”,以避免与原始紧缩的数据格式的混淆。虽然HTTP 1.1 RFC 2616正确地指向了RFC 1950中的zlib规范来传输编码'deflate',但有关错误生成或期望RFC 1951中deflate规范中的原始deflate压缩数据的服务器和浏览器的报告,尤其是Microsoft产品。因此,即使使用zlib格式的'deflate'传输编码会更高效 (事实上,这正是zlib格式的设计目的),但使用'gzip'传输编码可能更可靠,这是HTTP 1.1作者不幸选择名称的结果。" (来源: http://www.gzip.org/zlib/zlib_faq.html)
因此,我的问题是:如果我发送没有zlib包装器(或gzip)的原始deflate数据,是否有任何现代浏览器(例如,IE6及以上版本,FF,Chrome,Safari等)无法理解原始deflate压缩数据(假设HTTP请求头“Accept-Encoding”包含“deflate”)?
Deflate压缩数据一定比GZIP少几个字节。
如果所有这些浏览器都能成功解码数据,那么使用原始的Deflate而不是zlib存在哪些缺点?