Javascript 将XMLHttpRequest中接收到的数据保存到文件中

Javascript 将XMLHttpRequest中接收到的数据保存到文件中,javascript,node.js,download,Javascript,Node.js,Download,我实际上遇到了从我的nodeJs服务器下载文件的问题。我花了很多时间在其他话题上,但都没有成功 我在客户端上有一个应用程序,建议下载一些文本文件。所以我把这段代码放在下载过程中: 'click .downloadF': function(event) { var $target = $(event.target); var file = $target.model(); var download = $.get('/files/download'+'?'+Math.ra

我实际上遇到了从我的nodeJs服务器下载文件的问题。我花了很多时间在其他话题上,但都没有成功

我在客户端上有一个应用程序,建议下载一些文本文件。所以我把这段代码放在下载过程中:

'click .downloadF': function(event) {
    var $target = $(event.target);
    var file = $target.model();

    var download = $.get('/files/download'+'?'+Math.random(),
                        {id:file.id});
  },
到这里…非常简单。 在我的点头方面,我说:

app.get('/files/download', function(req, res) {
var filePath = metrology.DownloadFile(req.query.id);

var filename = path.basename(filePath);
var mimetype = mime.lookup(filePath);

res.setHeader("Content-disposition", "attachment; filename=Metrology.csv");
res.setHeader('Content-type', mimetype);

var filestream = fs.createReadStream(filePath);
filestream.pipe(res);
})

在响应中,我得到了正确的文本数据,并且头被正确设置为attachement和file type。 答复:

连接保持活动状态 内容处置附件; 文件名=Metrology.csv 内容类型文本/csv 日期2014年6月16日星期一 15:17:25 GMT传输编码分块X-Powered-By Express

内容:

不部分;无竞争;测量;结果;1.1.1.3.1.1.2.2.1.1.3.2. 1.1.4.2.2.1.1.2.2.1.2.2.2.1.3.2.2.1.4.2;

现在。。。如何打开对话框窗口将这些数据保存到指定的文件路径

我实际上正在Mozilla上调试,但也必须使用IE9/11

非常感谢您的帮助、想法、建议和可能的解决方案:-

jQuery.get函数是必需的吗?window.location.href是否实现了您的目标

'click .downloadF': function(event) {
    var $target = $(event.target);
    var file = $target.model();

    window.location.href='/files/download'+'?'+Math.random()+'&id='+file.id;
  },

可能重复?很抱歉,我在所有地方都看到了相同的信息:需要定义附件的内容配置。。。但在我的情况下,我收到了数据,但没有打开任何对话框来保存文件。。。请帮助:-/