mal*_*tor 5 ruby memory ruby-on-rails httparty ruby-on-rails-3
这是否会导致Ruby的内存问题.我知道如果大小超过10KB,Open-URI会写入TempFile.但HTTParty会在写入TempFile之前尝试将整个PDF保存到内存中吗?
src = Tempfile.new("file.pdf")
src.binmode
src.write HTTParty.get("large_file.pdf").parsed_response
Run Code Online (Sandbox Code Playgroud)
Mar*_*mas 11
您可以使用Net :: HTTP.请参阅文档(特别是标题为"Streaming Response Bodies"的部分).
以下是文档中的示例:
uri = URI('http://example.com/large_file')
Net::HTTP.start(uri.host, uri.port) do |http|
request = Net::HTTP::Get.new uri.request_uri
http.request request do |response|
open 'large_file', 'w' do |io|
response.read_body do |chunk|
io.write chunk
end
end
end
end
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4056 次 |
| 最近记录: |