AB Lab

abgata20000 blog.

net/http/response.rbのバグ修正

参考サイト

概要

Rubyでブログ投稿しようと頑張っていたら、ハマった。

xml-rpcで投稿していた所、

jugemやseesaaは問題なく投稿や情報の取得ができていたのだが、

FC2に投稿しようとするとエラーが出る。

Wrong size. Was 31564, should be 1501

いろいろ調べてみたらどうやらRubyの標準ライブラリの

net/http/response.rb

のバグらしい

https://github.com/ruby/ruby/pull/308/files

で修正パッチが記載してあったので、こちらを利用することに

他の対応方法

response.rb を書き換える方法ではなく、

libxml というライブラリを使う方法もあるようだが、

今回は修正パッチの方法で対応

※railsでxml/libxml がないとか言われたり、関数の表現変わったりで面倒だったので

修正方法

rbenv version

で現在利用しているrubyのバージョンと場所を確認

.rbenv/versions/2.0.0-p247/lib/ruby/2.0.0/net/http

内の

response.rbを書き換える

修正箇所は参考URLを参照

一応、修正したファイルをgithubにあげておいたので、

今後は、こちらをpullしてコピーで対応しようと思う

シェルスクリプト書くかどうか検討中

https://github.com/abgata20000/net-http-response.rb.git