Ruby on rails 从rails返回文件
初学者rails问题:如何从rails中的控制器返回文件? 我熟悉返回/呈现JSON对象。但是,我从未返回/呈现过具有任意扩展名的文件Ruby on rails 从rails返回文件,ruby-on-rails,file,Ruby On Rails,File,初学者rails问题:如何从rails中的控制器返回文件? 我熟悉返回/呈现JSON对象。但是,我从未返回/呈现过具有任意扩展名的文件 从周围的阅读来看,这听起来像是render:nothing=>true可能会有所帮助。我只是想找一些指导或相关文档。您可以使用内置的rails或方法 要流式传输文件(例如,对于文件代理端点),请使用send_file: send_file("#{RAILS_ROOT}/path/to/file/on/server", :filename => "cli
从周围的阅读来看,这听起来像是
render:nothing=>true
可能会有所帮助。我只是想找一些指导或相关文档。您可以使用内置的rails或方法
要流式传输文件(例如,对于文件代理端点),请使用send_file:
send_file("#{RAILS_ROOT}/path/to/file/on/server",
:filename => "client-suggested-filename",
:type => "mime/type")
要流式传输生成的数据(例如,对于生成的pdf),请使用send_data:
send_data(your_data,
:filename => "client-suggested-filename",
:type => "mime/type")
文件扩展名和mime类型不必匹配,但它们可能只是为了符合最终用户的期望。例如,如果发送的mime类型为application/pdf
,则应将:filename
设置为something.pdf
如果不确定要发送的文件的mime类型,可以检查或使用gem。(或者,如果您正在从存储mime类型的数据库中读取,请使用该数据库)。可能的重复: