如何通过NodeMailer启用DKIM发送直接电子邮件



如何通过启用DKIM通过nodemailer发送直接电子邮件?

我尝试了

const nodemailer = require('nodemailer')
const directTransport = require('nodemailer-direct-transport')
const transporter = nodemailer.createTransport(
  directTransport({
    dkim: {
      domainName: "mydomain.com",
      keySelector: "mail",
      privateKey: "<generated private key>"
    }
  }))
require('express')().get('/test', (req, res, next) => {
  console.log('sending mail')
  mailer.sendMail({
    from: 'support@mydomain.com',
    to: 'pmmEoRzqH5EyTO@dkimvalidator.com',
    subject: 'test email',
    html: 'Email content'
  }, (err, reply) => {
    console.log('email sent')
    console.log(err && err.stack)
    console.dir(reply)
  })
  res.send('test').end()
})

我还将公共密钥作为TXT记录添加到我的DNS面板中。

发送电子邮件是发送的,但是我在http://dkimvalidator.com/results

上没有DKIM。

DKIM信息:DKIM签名

此消息不包含DKIM签名

是否有人成功了?这看起来是一种直接的便宜方式,可以在不设置SMTP服务器的情况下发送电子邮件,但我没有看到任何帖子。

最后,我想出了自己的解决方案。

nodemailer是大项目,但看起来缺乏维护器。默认情况下,非BUG报告问题是关闭的。

我切换到sendmail,然后一切都像魅力一样

最新更新