0

Rails 3 アプリの API によって行われる応答のサイズを取得したいと考えています。

クライアント アプリケーションがリソースを要求した場合、クライアント アプリケーションが使用しているデータ量を後で確認できるように、JSON 応答のフル サイズ ( RABLがレンダリングした後の KB/MB 単位) をキャプチャして保存できるという考え方です。 . それらは非常に大きいため、これらの API JSON 応答の一部は (現時点ではローカルに、近い将来 Redis で) キャッシュされるため、ソリューションは、レンダリングされたものだけでなく、キャッシュされた応答のサイズをキャプチャできる必要があります。

Railsでこれを達成するための最良の方法と場所は何ですか? ラックレベルで?コントローラーでは (コントローラーは ActionController::Metal を使用します)? 明らかに、これによって応答時間にかかるオーバーヘッドが少なければ少ないほど、より良い結果が得られます。

4

1 に答える 1

0

これを application.rb に追加することで、Rack で ContentLength をオンにすることができます。

config.middleware.use Rack::ContentLength

次に、すべてのリクエストでコンテンツの長さがヘッダーで送信されます。

于 2013-08-31T15:16:10.410 に答える