You can try. I have already worked for this. This example will help you.
var path = require('path');
var mime = require('mime');
app.get('/download', function(req, res){
var file = __dirname + '/upload-folder/dramaticpenguin.MOV';
var filename = path.basename(file);
var mimetype = mime.lookup(file);
res.setHeader('Content-disposition', 'attachment; filename=' + filename);
res.setHeader('Content-type', mimetype);
var filestream = fs.createReadStream(file);
filestream.pipe(res);
});file);
filestream.pipe(res);
});
If you want to send the file to front end for handle then you can try :
exports.sendPdf = function(req, res) {
var donneRecu = req.body;
console.log(donneRecu['lien']);
var url = donneRecu['lien'];
http.get(url, function(response) {
var chunks = [];
response.on('data', function(chunk) {
console.log('downloading');
chunks.push(chunk);
});
response.on("end", function() {
console.log('downloaded');
var jsfile = new Buffer.concat(chunks).toString('base64');
console.log('converted to base64');
res.header("Access-Control-Allow-Origin", "*");
res.header("Access-Control-Allow-Headers", "X-Requested-With");
res.header('content-type', 'application/pdf');
res.send(jsfile);
});
}).on("error", function() {
callback(null);
});
}