通过AJAX请求下载文件

时间:2012-11-11 20:49:40

标签: jquery ruby-on-rails ajax

我正在使用AJAX向我的Rails控制器提交POST请求

$("#submit_form").submit(function(event) {
  ...
  /* Send the data using post*/
    $.post( "/download", { s: term },
      function( data ) {}
    );
});

控制器使用Rails send_file方法返回文件。但是,当我单击表单按钮时,没有文件下载到我,即使响应标题显示

Content-Disposition:attachment; filename="pic.jpg"

我如何获取文件?

1 个答案:

答案 0 :(得分:2)

AFAIK无法让用户使用AJAX请求下载文件,我认为没有理由这样做,因为用户在下载文件时会留在页面上。

对于要下载的文件,响应必须由Web浏览器而不是JavaScript代码处理。