【发布时间】:2014-02-07 01:58:27
【问题描述】:
它曾经工作过。我有一个程序可以获取并膨胀 gzip 压缩的 facebook 页面数据。 我收到的数据最近发生了一些变化,因此在通货膨胀的一部分中,我收到一条错误 Z_DATA_ERROR 并显示消息“无效的代码长度设置” 如果我尝试使用 inflateSync 进行恢复,再次尝试 inflate 时,我会立即再次收到数据错误。
压缩后的数据是here
查看其他网站我没有收到此错误,这可能是 Facebook 的 gzip 压缩特有的问题
这让我尴尬了很长时间,我非常想知道如何解决它,如果浏览器处理得很好,我会假设数据没有问题。
【问题讨论】:
-
您确定它没有损坏吗?该数据使我机器上的 zlib 实用程序崩溃。
-
也许提供一些您从哪里获得这些数据的信息会很有用,浏览器处理得很好是什么意思?
-
我看不出它是如何损坏的……它来自 facebook 服务器。使用openSSL我得到了分块的HTTP,将它粘在一起然后使用inflateInit2(&strm, 16+MAX_WBITS); ... 膨胀(&strm, Z_FINISH);