首页 > 解决方案 > 使用nodemailer将pdf发送到kindle电子邮件时未添加附件

问题描述

我正在尝试将pdf发送到kindle电子邮件。

当我将它发送到我自己的电子邮件时,pdf 被正确添加。

但是当我发送到kindle电子邮件时出现以下错误:

您的邮件未包含附件或图像文件中的任何文档。

代码如下:

function sendEmail(subject, fileName, path) {
  const transporter = nodemailer.createTransport({
    service: "gmail",
    auth: {
      user: process.env.EMAIL,
      pass: process.env.PASS,
    },
  });

  var mailOptions = {
    from: process.env.EMAIL,
    to: process.env.KINDLE_EMAIL,
    attachments: [
      {
        filename: fileName,
        path,
        contentType: "application/pdf",
      },
    ],
  };

  return new Promise((resolve, reject) => {
    transporter.sendMail(mailOptions, function (error, info) {
      if (error) {
        console.log("error send email " + error);
        reject(error);
      } else {
        console.log("Email sent: " + info.response);
        resolve();
      }
    });
  });
}

标签: node.jsnodemailerkindle

解决方案


我设法解决了这个问题。

就我而言,问题发生是因为我没有将 .pdf 扩展名放在文件名中


推荐阅读