您好,我正在尝试将文件从我的 express 服务器发送到我的前端,以允许用户在单击按钮时下载它。我已经在后端创建了一条通过字节数组发送的路由,但我对如何允许用户下载它一无所知。
我在这里尝试做的是允许一个用户直接将文件上传到我的服务器,然后另一个用户来下载之前上传的文件。
我已经让上传部分正常工作了。现在我只是缺少下载部分的指导。
这是我被击中的快速路线。
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);
})
}
这是我单击按钮时不断收到的错误
Unable to open a window with invalid URL
对我来说有意义,因为我没有得到网址,而是得到了一个字节数组
最佳答案
试试这个 -
window.open('/api/download/getFile?file=yourfile');
关于javascript - 发送文件给客户端下载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42337191/