我正在研究与RackSpace云文件(类似于Amazon S3但缺少某些功能)通信的Ruby on Rails应用程序。Ruby on Rails 3:通过Rails将数据流式传输到客户端
由于缺乏每个对象的访问权限和查询字符串认证的可用性,所以下载到用户必须通过应用程序进行调解。
在Rails 2.3,它看起来像你可以动态生成的响应如下:
# Streams about 180 MB of generated data to the browser.
render :text => proc { |response, output|
10_000_000.times do |i|
output.write("This is line #{i}\n")
end
}
(从http://api.rubyonrails.org/classes/ActionController/Base.html#M000464)
相反的10_000_000.times...
我可以放弃我的cloudfiles在那里流生成代码。
麻烦的是,这是我的输出获得当我尝试用Rails 3使用此技术
#<Proc:[email protected]/Users/jderiksen/lt/lt-uber/site/app/controllers/prospect_uploads_controller.rb:75>
看起来也许PROC对象的call
方法不会被调用?任何其他想法?
不适用于Rails 3.1。见约翰的答案。 – m33lky 2012-03-11 05:30:43
在3.2中也不起作用。请参阅http://stackoverflow.com/a/4320399/850996下面的 – 2014-06-23 23:58:03