ruby の Zlib::Inflate 実行時に incorrect header check エラーが出たので回避。
rubyを使って、HTTPで取得した内容がContent-Encoding: gzip のファイルだったら解凍したいけど、 の Zlib::Inflate 実行時に incorrect header check エラーが出て解凍できないものがあったので、以下の方法で対応。
def extract_file(gzip) zstream = Zlib::Inflate.new(Zlib::MAX_WBITS + 32) ## 試してないけど16でもよかったのかも buf = zstream.inflate(string) return buf end
参考:
http://znz.s1.xrea.com/t/?date=20050225
%!zt! diary(2005-02-25)
http://www.ruby-lang.org/ja/man/?cmd=view;name=Zlib;em=zlib
Rubyリファレンスマニュアル - Zlib
http://jp.rubyist.net/magazine/?0018-BundledLibraries
Rubyist Magazine - 標準添付ライブラリ紹介 【第 11 回】 zlib
http://www.ruby-lang.org/ja/man/?cmd=view;name=Zlib%3A%3AInflate
Rubyリファレンスマニュアル - Zlib::Inflate