json構造を返すコントローラアクションがあります。大きなjsonデータの返信問題
render :json => hash_data
これは、本番モードと開発モードの両方で小さなデータセットで機能します。ただし、大規模なデータセットの場合、これは開発モードでのみ機能します。プロダクションモードでは、json文字列の一部のみが返されます。 Railsのバージョンは3.0.9です。プロダクションモードでは、ロードバランサからnginxに移動します。開発モードでは:私はwebrickを使用します。
プロダクションモードHTTP応答ヘッダー:
Cache-Control max-age=0, private, must-revalidate
Connection close
Etag "a7b077a364f849a57ffe582525c98ea1"
Server nginx/1.0.10 + Phusion Passenger 3.0.11 (mod_rails/mod_rack)
Status 304
X-Powered-By Phusion Passenger (mod_rails/mod_rack) 3.0.11
X-Runtime 8.462971
X-UA-Compatible IE=Edge,chrome=1
開発モードHTTP応答ヘッダー:
Cache-Control max-age=0, private, must-revalidate
Connection Keep-Alive
Content-Length 144561
Content-Type application/json; charset=utf-8
Date Tue, 20 Mar 2012 08:37:30 GMT
Etag "b6b9cdb7811577280320f7a3f50bd937"
Server WEBrick/1.3.1 (Ruby/1.9.2/2010-08-18)
X-Runtime 12.832829
X-UA-Compatible IE=Edge
さらに奇妙な、Chromeは大規模なデータセットでの生産と開発の両方のモードのために正常に動作します。しかし、他のすべてのブラウザは動作しません。どんな助けでも大歓迎です。
どのくらい大きいですか? 144561バイトはそれほど大きくないのですか? – Vapire
いいえ、そうではありません。だからこそ、それはとても驚くべきことです。私はそれがhttpsに関連しているかどうかわかりません。私は生産のためにhttpsを使い、開発のためにhttpを使うからです。 – user612308
こんにちは。これに関する更新はありますか?私は同じ問題を抱えています。/。さらに奇妙なことに、最初の要求の直後に要求がやり直された場合、応答は正常に行われます。あなたはnginx +の乗客を使用していますか? – robertokl