我已经使用Excel4node库创建了一个excel电子表格,然后用必要的数据填写了这个电子表格。
var excel = require('excel4node');
var workbook = new excel.Workbook();
var worksheet = workbook.addWorksheet('Sheet 1');然后,我希望用户能够下载此电子表格,并在Microsoft Excel中打开它。
workbook.write("Excel.xlsx", res);此代码可在FireFox浏览器中运行,但在Google Chrome或Microsoft Edge中不会提示下载。有人能帮我解决这个问题吗?任何帮助都将不胜感激!
发布于 2021-03-17 19:10:17
忘记设置content-type头,否则浏览器只能猜测。
wb.writeToBuffer()
.then(function(buffer) {
const filename = 'Testing workbook.xlsx'
res
.set('content-disposition', `attachment; filename="${filename}"; filename*=UTF-8''${encodeURI(filename)}`) // filename header
.type('.xlsx') // setting content-type to xlsx. based on file extention
.send(buffer)
});https://stackoverflow.com/questions/66642036
复制相似问题