我有一个预先设计的url从minio包含一个pdf文件。该url在24小时内有效。如何从url下载文件而不保存到本地或服务器,并将文件作为附件发送到nodemailer。
https.get(signedUrl)
.pipe(fs.createWriteStream('sample.pdf'))
.on('finish', function () {
console.log('Downloaded!!');
});
我试过这个代码,但文件正在保存到本地。有没有办法下载它而不保存到本地或服务器?
以http
和nodemailer
为例
https.get(signedUrl, res => {
transporter.sendMail({
..., // Other params
attachments: [
{
filename: 'example.pdf',
content: res,
}
]
});
})
如果它是一个数组,我们必须创建一个附件数组:
const promises = []
const attachments = [];
for (const url of signedUrl) {
promises.push(new Promise((resolve, reject) => {
https.get(url, res => {
attachments.push({
filename: 'example.pdf',
content: res,
})
resolve();
})
}))
}
await Promise.all(promises);
transporter.sendMail({
..., // Other params
attachments
});