res.download() 和 res.sendFile() 不工作 node.js express 服务器

问题描述

我有一个在 node.js 中使用快速服务器的应用程序 在服务器上,我的主目录中有一个 excel 文件“temp.xlsx”。我正在尝试将该文件发送到客户端并将其保存在本地存储中,但是当我使用 res.download() 和 res.sendFile() 时,我什么也没有得到。

我很感激任何输入。代码如下:

 router.post("/getSubmissionData",async (req,res) => {
    const path = require("path");
    try {
        const result = await getSubmissions.getSubmissionData(filename); //this stores the file as temp.xlsx
        res.sendFile(path.join(__dirname + '/temp.xlsx'))
    } catch (err) {
        res.send(err)
    }
});

我也试过

 router.post("/getSubmissionData",res) => {
    const path = require("path");
    try {
        const result = await getSubmissions.getSubmissionData(filename); //this stores the file as temp.xlsx
        res.download(path.join(__dirname + '/temp.xlsx'))
    } catch (err) {
        res.send(err)
    }
});

来自客户端的 serer 的响应说一切正常(我没有收到任何错误 - 但我也无法在客户端的任何地方查看/下载/访问文件)。我以为它应该提示下载,但事实并非如此。我不希望用户一定下载文件,我只希望它存储在本地存储中,以便我可以使用另一个已经存在的函数导入文件来分析电子表格。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)