Express - Return binary data from webservice Express - Return binary data from webservice express express

Express - Return binary data from webservice


Here is my slightly cleaned up version of how to return binary files with Express. I assume that the data is in an object that can be declared as binary and has a length:

exports.download = function (data, filename, mimetype, res) {    res.writeHead(200, {        'Content-Type': mimetype,        'Content-disposition': 'attachment;filename=' + filename,        'Content-Length': data.length    });    res.end(Buffer.from(data, 'binary'));};


I found a more simple solution :

request(req.url).pipe(res);

This pipes the original response from distant Web Service directly to my response! I got the correct file regardless of the file type.