dea*_*ock 6 javascript gzip google-chrome tar
最近,我一直在处理一个导致Chrome无法正确保存压缩gzip文件的问题。
这篇文章描述了根本问题:下载的 Gzip 似乎已损坏 (Chrome)
如链接中所述,该文件已在 Firefox 中正确下载,因为响应AJAX接收到的 blob 是 gzip 编码的,因此可以正确保存为.gz文件。但是当 Chrome 接收到 blob 数据时,它会自动解压缩,获得纯文本(UTF-8编码)而不是gzip我们正在寻找的编码。这使得保存的文件被损坏,因为它被保存在UTF-8应该被 gzip 压缩的文件中的编码 blob 中。
经过一番研究,我终于找到了问题的原因:显然,当content-encoding: gzip服务器响应中指定 header 时,Chrome 会自动解压缩文件,假设使用压缩的主要原因gzip只是为了节省带宽。以下帖子更详细地描述了此问题:Chromium: Prevent unpacking tar.gz
在启用后gzip压缩来包装.tar文件的情况下,但在我的情况下,gzip 压缩下没有文件(我gzip使用 直接将数据写入服务器端的文件gzip python module)。因此,Chrome解压时gzip,只有纯文本。我尝试在不指定content-encoding标头的情况下显式发送响应,但 Chrome 似乎会自动检测编码。
无论如何,我可以禁用 Chrome 的gzip自动解压功能吗?