我想创build一个下载button,但文件不下载?
我正在创build请求服务器下载文件的点击监听器的下载button
代码点击侦听器:
downloadFileClick(event){ $.ajax('/download', {data:{}}).done(function(data){ }.bind(this)); }
在服务器端下面的代码正在运行
app.get('/download', function(req, res){ var file = __dirname + '/write/imageout.png'; res.download(file); });
文件不在浏览器中下载。 我检查了从服务器发送给客户端的响应,它发送文件内容,但不从浏览器下载。
您无法通过向该文件发出ajax请求来下载文件。 浏览器将忽略这个。 您必须通过<a href="/download" download>
打开文件,或者您可以从jQuery中触发:
var a = $("<a>"); a.attr("href", "/download"); a.attr("download", "img.png"); // this is important a.appendTo("body"); a[0].click(); a.remove();
这应该正确地下载浏览器图像。