使用 PDFkit 通过 Nodemailer 发送 base64 编码的 PDF

Sending base64 encoded PDF through Nodemailer using PDFkit

我有一个功能,returns 我用 base64 编码 PDF,我想使用 nodemailer 将其作为附件 PDF 文件发送。

关于 nodemailer 文档,我找到了这个例子:

const mailOptions = {
    from: 'email1@gmail.com', // sender address
    to: 'email2@gmail.com', // list of receivers
    subject: 'Simulation', // Subject line
    html: '<p>SALUT</p>', // plain text body
    filename: 'file.pdf',
    attachments: [
          content: Buffer.from(
                'iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAQMAAAAlPW0iAAAABlBMVEUAAAD/' +
                    '//+l2Z/dAAAAM0lEQVR4nGP4/5/h/1+G/58ZDrAz3D/McH8yw83NDDeNGe4U' +
                    'g9C9zwz3gVLMDA/A6P9/AFGGFyjOXZtQAAAAAElFTkSuQmCC',
                'base64'
            ),

            cid: 'note@example.com' // should be as unique as possible
        },

但是,这对我不起作用。我错过了什么吗?

好的,这都是格式问题。

以下是在 Nodemailer 上使用 B64 的方法:

  const mailOptions = {
    from: 'email1@gmail.com', // sender address
    to: 'email2@gmail.com', // list of receivers
    subject: "Hey this is a subject example", //subject
    attachments: [
      {
        filename: `myfile.pdf`,
        content: 'THISISAB64STRING',
        encoding: 'base64',
      },
    ],
  };

那就用经典方式发送吧。