【发布时间】:2014-11-04 22:48:26
【问题描述】:
我在远程服务器上的某个目录中有一些文件,例如:
171.XX.XX.XXX/test/data/file1.zip
171.XX.XX.XXX/test/data/file2.zip
因此,在我的 Web 应用程序中,当用户访问页面时(例如 www.mysite.com/downloads),我想从远程服务器检索一些文件并让用户可以下载。
所以基本上,网页会喜欢
file1.zip
file2.zip
当用户点击一个时,它会将远程文件下载到他的本地计算机上。
在 Ruby on Rails 上完成此任务的最佳方法是什么?
编辑:正如 cmets 中所指出的,通过服务器而不是直接链接到远程服务器是有意义的。
EDIT2:“open-uri”是否适用于非 http url?
当我尝试时
url_file_path = open('172XX.XX7/test/data/my_file.zip').read
send_data url_file_path, filename: test.zip, type: 'application/octet-stream'
Errno::ENOENT: 没有这样的文件或目录
【问题讨论】:
-
我是否正确假设您不想直接链接到远程文件?您希望它改为通过您的服务器吗?
-
@substantial,你是对的。我应该在我最初的问题中提到这一点。
标签: ruby-on-rails ruby