Rails内でrequest.bodyの扱いがHTTPサーバによって違ったのでメモ。 (id:secondlife さんからTwitter上で”thin / unicorn で異なるところに着目するより、rack.input を見てそれが異なってる、というところのほうが重要じゃないかな。" とアドバイス頂いたので、後日再エントリー書きます!) 環境 thin 1.3.1 unicorn 4.2.1 詳細 thinの場合 p request.body.class # => StringIOunicornの場合 p request.body.class # => Rack::Lint::InputWrapper上記の場合、引数にStringやStringIOを想定して実装しているメソッドでエラーになる。 thinに合わせるのなら、unicornでrequest.body.readにする必要があ