Ruby on rails Ruby/Rails:从URL实例化文件对象

Ruby on rails Ruby/Rails:从URL实例化文件对象,ruby-on-rails,ruby,heroku,Ruby On Rails,Ruby,Heroku,我想知道如何从url(例如http://www.example.com/foo.png),然后可以传递给其他方法。我需要一个有效的文件对象,而不是临时文件。我正在Heroku上运行一个Rails应用程序,因此理想情况下我不希望将文件保存到磁盘,因为我只需要在HTTP post请求期间将其持久化 谢谢 这就是你要找的吗?它将从URL打开一个文件,并创建一个新的ruby文件类及其内容 require 'open-uri' file = File.new(open('http://www.exampl

我想知道如何从url(例如
http://www.example.com/foo.png
),然后可以传递给其他方法。我需要一个有效的
文件
对象,而不是
临时文件
。我正在Heroku上运行一个Rails应用程序,因此理想情况下我不希望将文件保存到磁盘,因为我只需要在HTTP post请求期间将其持久化


谢谢

这就是你要找的吗?它将从URL打开一个文件,并创建一个新的ruby
文件
类及其内容

require 'open-uri'
file = File.new(open('http://www.example.com/foo.png'))

你要求它是一个真正的文件对象,而不是保存到磁盘上,这听起来很矛盾。我接受了你的回答,因为它解决了我的核心问题,尽管我认为Frederick Cheung的说法是正确的,即如果不写入磁盘,可能无法创建一个
文件
对象。我意识到我可以调用
File.close
删除该文件,这间接地解决了我的另一个要求,即在POST请求之外不持久保存该文件。