使用AJAX请求下载文件数据 - Ruby在Rails 3上



我最近了解到,我在Ruby中的单个HTTP请求下载了超过1个文件,除非我使用Ajax请求进行此操作。我现在试图弄清楚如何做到这一点。

(我正在使用大虾作为PDF创造者,带有Ruby在Rails 3)我的控制器中有一个渲染PDF并使用send_data

的操作
def download_quote          
pdf = QuotesPdf.new(params)
send_data pdf.render, filename: "foo.pdf",
                    type: "application/pdf",
                    disposition: "download"
end

然后,我的HTML视图中有一个按钮,该按钮具有此工作JScript代码

// AJAX, download
function ajaxRequest(){
    $.ajax({
      type: 'POST',
      url: '/download_quote/126',
      success: function(data){
        alert(data);
      }
    });
    return false;
  }
  $("#mydownload").click(ajaxRequest);

渲染PDF几秒钟后单击" #mydownload"时,我认为,我认为所有PDF文件都会获得一个带有内部数据的警报。

问题是:如何在PDF文件中转换数据并自动下载?

我不认为"下载"是有效的内容处置类型。尝试使用"附件"。

内容处置

def download_quote          
    pdf = QuotesPdf.new(params)
    send_data pdf.render, filename: "foo.pdf",
        type: "application/pdf",
        disposition: "attachment"
end

最新更新