如何在 Ruby 中从内存中 HTTP 发送流数据?
我想上传在 Ruby 中运行时生成的数据,就像从块中提供上传数据一样。
我发现的所有示例仅显示如何在请求之前流式传输必须位于磁盘上的文件,但我不想缓冲该文件。
除了滚动我自己的套接字连接之外,最好的解决方案是什么?
这是一个伪代码示例:
post_stream('127.0.0.1', '/stream/') do |body|
generate_xml do |segment|
body << segment
end
end
I would like to upload data I generated at runtime in Ruby, something like feeding the upload from a block.
All examples I found only show how to stream a file that must be on disk prior to the request but I do not want to buffer the file.
What is the best solution besides rolling my own socket connection?
This a pseudocode example:
post_stream('127.0.0.1', '/stream/') do |body|
generate_xml do |segment|
body << segment
end
end
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
有效的代码。
Code that works.
有一个 Net::HTTPGenericRequest#body_stream=( obj.should respond_to?(:read) )
您或多或少像这样使用它:
There's a Net::HTTPGenericRequest#body_stream=( obj.should respond_to?(:read) )
You use it more or less like this: