【发布时间】:2017-02-20 05:35:53
【问题描述】:
您好,我正在尝试将文件从我的快速服务器发送到我的前端,以允许用户在单击按钮时下载它。我已经在后端创建了一条通过字节数组发送的路由,但我对如何允许用户下载它一无所知。
我在这里尝试做的是允许一个用户将文件直接上传到我的服务器,然后另一个用户来下载前一天上传的文件。
我已经让上传部分正常工作。现在我只是缺少下载部分的方向。
这是我的特快路线。
const path = require('path');
const getFile = (req, res) => {
const filePath = path.join(__dirname, '../../../', req.query.file);
console.log(filePath);
res.download(filePath);
};
这是我的前端功能的 onClick
download(file) {
axios.get('/api/download/getFile', {
params: {
file,
},
})
.then(data =>{
console.log(data);
window.open(data.data);
})
}
这是我点击按钮时不断出现的错误
无法打开 URL 无效的窗口
对我有意义,因为我没有得到一个 url 我得到一个字节数组
【问题讨论】:
-
window.open('/api/download/getFile?file=yourfile');怎么样? -
@RehbanKhatri ha 我已经花了 3 天的时间来解决这个问题,非常感谢您
-
太棒了!想将此标记为答案吗?
标签: javascript file reactjs express download