我正在使用Rails进行WebApp(使用mongrel进行开发,使用nginx进行生产)。 我发送JSOn数据:
respond_to do |format|
format.json { render :json => { :success => "OK", :items => items } }
end
有效。但是我需要有Content-Length,而不是发送。获取JSON时如何强制在标头中发送Content-Length?是-Rails配置问题,还是服务器配置问题?
有没有办法在Rails中设置它?喜欢:
response ['Content-Length'] = xxx
这是个好主意吗?在我的例子中,我发送了大量的JSON数据(300 Kb)。
答案 0 :(得分:2)
哪个Rails版本(确切地说)?
试试http://dev.mensfeld.pl/2011/09/rails-3-1-sending-content-length-header-using-middleware-rack-content-length/ 这增加了一个设置C.L.的中间件。自动。
当然你可以手动设置它,但因为那里有方便的中间件......:)
另见http://weblog.rubyonrails.org/2011/4/18/why-http-streaming - 显然它并非一直自动完成,因为对于流媒体响应它没有用。