当客户点击按钮时,我想使用节点js在我的服务器上下载图像。我能够从后端运行此功能。但是我不知道如何为前端做到这一点。
这是我的后端nodeJS代码:
var fs = require('fs'),
request = require('request');
var download = function(uri, filename, callback){
request.head(uri, function(err, res, body){
console.log('content-type:', res.headers['content-type']);
console.log('content-length:', res.headers['content-length']);
request(uri).pipe(fs.createWriteStream(filename)).on('close',
callback);
});
};
// invoke the function
download('https://www.google.com/images/srpr/logo3w.png', 'google.png', function(){
console.log('done');
});
这是html中的按钮
<button onclick = "download('/...link-to-image.jpg')"></button>
我知道我可以使用表单,但我不想刷新页面。我应该为ajaxSubmit使用jquery表单吗?
答案 0 :(得分:0)
这是一个简短的代码,希望对您有帮助
<a href="file/path" download>download</a>
答案 1 :(得分:-2)
我认为你应该使用ajax来调用你的api。点击按钮会对你的api进行ajax调用,你的api会做你想做的任何事情。
尝试遵循这个非常简单的