Node.js 如何将PDF附加到从express应用发送的电子邮件
我正在尝试发送带有PDF附件的电子邮件,但无法打开PDF。(如何从文件系统加载PDF并将其包含在从express app发送的电子邮件中?) 这就是我现在拥有的:我像这样从文件系统加载PDF:Node.js 如何将PDF附加到从express应用发送的电子邮件,node.js,email,express,pdf,mandrill,Node.js,Email,Express,Pdf,Mandrill,我正在尝试发送带有PDF附件的电子邮件,但无法打开PDF。(如何从文件系统加载PDF并将其包含在从express app发送的电子邮件中?) 这就是我现在拥有的:我像这样从文件系统加载PDF:var-pdfAttach=fs.readFileSync('./pdfs/test.PDF',binary')并将其包含在发送到Mandrill的对象中,如下所示: { ... attachments: [{content: pdfAttach, name: "testing.pdf",
var-pdfAttach=fs.readFileSync('./pdfs/test.PDF',binary')
并将其包含在发送到Mandrill的对象中,如下所示:
{
...
attachments:
[{content: pdfAttach,
name: "testing.pdf",
type: "application/pdf"
}],
...
}
收件人收到一封包含无法打开的PDF文件的电子邮件。关于如何解决这个问题,你有什么想法吗?如果你看看Mandrill的Messages API,你会发现附件的内容必须是base64编码的字符串。因此,代码应该是:
var pdfAttach = fs.readFileSync('./pdfs/test.pdf');
...
attachments:
[{content: pdfAttach.toString('base64'),
name: "testing.pdf",
type: "application/pdf"
}],
...
希望这有帮助。真不敢相信我错过了。非常感谢。