Safari:无法解码原始数据;使用GZIP时

Safari: "Cannot decode raw data" when using GZIP

本文关键字:使用 GZIP 原始数据 解码 Safari      更新时间:2023-09-26

我有一个问题,当我压缩一个文件(jquery在这种情况下),然后保存的gzip内容,并提供给浏览器与一个content - encoding: gzip头它将在所有浏览器工作,除了Safari,它的状态:"不能解码原始数据"

我需要对内容进行gzip压缩,因为这将从一个μ -Controller交付,该控制器只有足够的空间来存储gzip压缩的内容,并且到目前为止没有足够的处理能力来对其进行gzip压缩,然后在飞行中,即使我可以存储它。

当你在safari中使用gzip压缩数据时:

gzip jquery.min.js

你最终会得到jquery.min.js.gz,即使正确指定为gzip编码的文件流,也会在Safari中失败,并且重命名为jquery。JGZ在很多关于这个问题的其他线程中都提到过。这似乎是因为文件名是在gzip文件中编码的。

如果你像这样编码gzip文件:

cat jquery.min.js | gzip > jquery.jgz

那么你的文件就会小几个字节,并且在Safari中也能完美地工作。