好的,我要做的就是在用户点击它时将文件保存到用户的磁盘上。这是代码,ajax:
$('.cv_download').on('click',function(){
var fileName = $(this).text();
console.log(fileName)
var temp = {"file" : fileName}
console.log(temp);
console.log(JSON.stringify(temp))
$.ajax({
url: '/download-cv-file',
type: 'POST',
data: {fileSend:JSON.stringify(temp)},
dataType: 'json'
});
})
在我的服务器文件中我有:
app.post('/download-cv-file', function(req, res){
services.downloadFile(req,res);
});
var downloadFile = function(req,res){
console.log('From services')
console.log(req.body.fileSend)
var p_file = JSON.parse(req.body.fileSend);
console.log(p_file);
console.log('The file we look for is ' + p_file.file);
var file = 'services/cvs/'+p_file.file+'';
console.log('The file is ' + file);
res.download(file);}
有什么想法吗?谢谢!
答案 0 :(得分:0)
您的问题是使用ajax发送文件。不起作用。您可以使用以下变通方法:使用文件url创建iframe或使用html5的文件api。
以下是一个很好的参考:Download a file by jQuery.Ajax