在控制器奇怪的行为,我有这样的事情:关于渲染文件的大小
respond_to do |format|
format.ini do
response.headers['Content-Disposition'] = "attachment; filename=somefile.ini"
render ini: SomeClass.make_ini(data)
end
end
SomeClass.make_ini(data)
呈现为API用户正确的ini文件(1.5MB)。我们的客户需要添加Content-Length
标题。原因并不重要。
当我尝试:
respond_to do |format|
format.ini do
file = SomeClass.make_ini(data)
response.headers['Content-Length'] = file.size.to_s
response.headers['Content-Disposition'] = "attachment; filename=somefile.ini"
render ini: file
end
end
file.size.to_s
带来1301761
。设置Content-Length
后,渲染文件为1.2MB。内容被削减。
如果有人能说出原因,我将不胜感激。
如果你使用curl,你还会得到相同的截断结果吗?是否通过curl标题中的“Content-Length”也如您所期望的那样? –