【发布时间】:2019-04-26 12:07:10
【问题描述】:
所以我想将文件直接传送到客户端;我目前的做法是在磁盘上创建一个文件,然后将该文件直接发送到客户端。
router.get("/download/:name", async (req, res) => {
const s3 = new aws.S3();
const dir = "uploads/" + req.params.name + ".apkg"
let file = fs.createWriteStream(dir);
await s3.getObject({
Bucket: <bucket-name>,
Key: req.params.name + ".apkg"
}).createReadStream().pipe(file);
await res.download(dir);
});
我刚刚查到res.download() 仅在本地提供服务。有没有办法可以直接从 AWS S3 下载到客户端?即管道文件直接给用户。提前致谢
【问题讨论】:
标签: node.js express download aws-sdk-js aws-sdk-nodejs