1

我使用 nodemailer 发送带有嵌入图片的邮件,

var mailOption = {
    html: 'Embedded image: <img src="cid:unique@kreata.ee"/>',
    attachments: [{
        filename: 'image.jpg',
        content: '/9j/4AA ... Q==',
        encoding: 'base64',
        cid: 'unique@kreata.ee'
    }]
    from: '...',
    to: '...',
    subject: '...'
}
var nodemailer = require('nodemailer');
var transporter = nodemailer.createTransport();
transporter.sendMail(mail, function(error, info) {
    ...
});

我可以收到来自 Outlook 的邮件,但是图片无法在 Outlook 中显示。我有2个问题,

  1. 如何使用 nodemailer 模块(或其他)在 Outlook 中显示图片
  2. 如何在上面的代码中打印整个邮件,包括标题和正文。
4

2 回答 2

1

我找到问题的原因。我下载并安装的模块“nodemailer”是 0.6.x 版本,它有一些附件问题。(我没有查原因)

重新安装 1.2.x 版本后,附件工作正常。

于 2014-08-28T05:51:18.107 回答
1

查看 Outlook 中的消息并检查 PR_ATTACH_CONTENT_ID 属性是否真的设置为“unique@kreata.ee”,并且 HTML 正文(PR_HTML 属性)使用指定的 cid 引用图像。您可以使用OutlookSpy查看 Outlook 中的数据:选择邮件,单击 OutlookSpy 工具栏上的 IMessage 按钮。要查看附件属性,请转到 GetAttachmentTable 选项卡并双击附件。

于 2014-08-27T06:27:59.637 回答