シンプルなラックミドルウェア「helloworld」を試してみたいのですが、行き詰まってしまいそうです。一部の例では次のコードを使用しているため、メインの構文が変更されたように見えます。
require 'rack/utils'
class FooBar
def initialize(app)
@app = app
end
def call(env)
status, headers, body = @app.call(env)
body.body << "\nHi from #{self.class}"
[status, headers, body]
end
end
エラーが発生します:
undefined method `<<' for #<ActionDispatch::Response:0x103f07c48>
他のコードを見ても、Rails3.0.3で実行できるようには見えません。
ここに私の具体的な質問があります:
- Railsアプリからの出力の本体を実行および変更するための単純なラックミドルウェアを取得するにはどうすればよいですか?
- Rails.application.config.middleware.use宣言はどこに置くべきですか?(私はそのためにconfig / initializersに独自のイニシャライザーを作成しました)
よろしくお願いします!