Мне нужно вытащить несколько файлов pdf из S3 и отправить их группе получателей. Я могу вытащить один PDF-файл и отправить его в группу, и они могут открыть PDF-файл просто отлично. Когда я пытаюсь использовать следующий код, я могу отправить несколько файлов PDF, но мы не можем открыть файлы PDF. Мы получаем следующую ошибку:
«Adobe Acrobat Reader не может открыть файл« filename.pdf », поскольку он либо не поддерживается типом файла, либо потому, что файл поврежден (например, он был отправлен как электронное письмо). вложение и не было правильно декодировано). "
Вот код, который я использую:
let attachments = reportNameKeys.map((reportNameKey) => {
let reportName = reportNameKey.substring(subStringNum);
const s3FileData = getS3File(process.env.BUCKET, reportNameKey).then(
function (fileData) {
return fileData;
}
);
return {
filename: reportName,
content: s3FileData.Body,
};
});
const mailOptions = {
from: 'no-reply@example.com',
subject: `Subject`,
html: `<p>Attachments are attached</p>`,
to: recipients,
attachments: attachments,
};
const transporter = nodemailer.createTransport({
SES: ses,
});
transporter.sendMail(mailOptions, function (err, info) {
if (err) {
console.error(err);
console.error('Error sending email');
} else {
console.log('Email sent successfully');
callback();
}
});
Кажется, что где-то в моем l oop код для документов ввернут вверх. Любая помощь будет принята с благодарностью.