ruby-on-rails – 强制链接下载MP3而不是播放它?

我有一个链接
<a href="http://bucket_name.amazonaws.com/uploads/users/4/songs/7/test.mp3">Download</a>

用户点击它时,如何做到这一点,它实际上打开一个弹出窗口,要求用户保存文件,而不是尝试在浏览器上播放文件

编辑:

我正在读这个article.

def download
    data = open(Song.first.attachment)
    send_data data.read,:type => data.content_type,:x_sendfile=>true
  end

文章建议使用x_sendfile,因为send_file占用一个http进程,潜在的挂起应用程序的风险,直到下载完成.

第二,我使用send_data而不是send_file,如果文件是远程的(即在Amazon S3上托管),这似乎工作.如article所示.

我提到的文章发布于2009年.是否仍然需要x_sendfile => true?如果不包括应用程序会挂起应用程序吗?

我真的要使用send_data或send_file吗?

解决方法

如果不想使用HTTP服务器配置,您可以使用单独的控制器管理文件下载.

所以你可以使用send_file配置选项作为附件.

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...