4

使用 excel4node 我可以将文件写入硬盘。但我想将其作为下载返回,而不将文件保存在服务器上。我认为需要以下代码,但不确定如何使用它:

wb.writeToBuffer().then(function(buffer) {
  console.log(buffer);
});

有人对此有想法吗?

4

3 回答 3

3

这是 nodeJS/Express GET 请求的示例。这是你要找的吗?

var xl = require('excel4node');

router.route("/test/").get((req, res) => {
    var wb = new xl.Workbook();
    var ws = wb.addWorksheet('SHEET_NAME');
    ws.cell(1, 1).string('ALL YOUR EXCEL SHEET FILE CONTENT');
    wb.write(`FileName.xlsx`, res);

});
于 2019-12-04T19:44:39.370 回答
1
let binarybuffer = new Buffer(buffer, 'binary');
res.attachment('filename.xlsx'); 
return res.send(binarybuffer);
于 2019-05-01T12:05:32.163 回答
0

//前端反应——

var fileDownload = require('js-file-download');  //npm i js-file-download
    axios({
        url:url,
        method: 'GET',
        responseType: 'blob', // Important
    }).then((response) => {
        fileDownload(response.data, `FileName.xlsx`);
    });
于 2021-03-11T10:30:06.087 回答