我正在使用nodemailer使用SES发送电子邮件
const nodemailer = require('nodemailer')
const sesTransport = require('nodemailer-ses-transport')
const transporter = nodemailer.createTransport(sesTransport({
accessKeyId: '...',
secretAccessKey: '...',
region: 'us-east-1'
}))
当我尝试从AWS SES仪表板发送测试电子邮件时,它可以正常工作。但是,当我通过代码发送时,它会进入垃圾邮件。我已经按照“启用简易DKIM”http://docs.aws.amazon.com/ses/latest/DeveloperGuide/easy-dkim.html的步骤进行了操作。当我在AWS Dashboard上检查DKIM的验证状态时,已经过验证。通过代码发送时是否需要明确签署电子邮件?在https://nodemailer.com/dkim/的示例中,我需要一个私钥。哪个私钥是?我从哪里得到它?还有什么值放入domainName和keySelector?
let transporter = nodemailer.createTransport({
service: 'Gmail',
dkim: {
domainName: 'example.com',
keySelector: '2017',
privateKey: '-----BEGIN PRIVATE KEY-----\nMIIEvgIBADANBg...'
}
});
答案 0 :(得分:0)
好的,我可以关闭它。似乎nodemailer没有使用DKIM正确签署电子邮件。直接使用AWS SDK并调用setIdentityDkimEnabled
启用DKIM修复问题。