0
我使用nodemailer使用SES来自NodeJS的AWS SES没有DKIM签名?
const nodemailer = require('nodemailer')
const sesTransport = require('nodemailer-ses-transport')
const transporter = nodemailer.createTransport(sesTransport({
accessKeyId: '...',
secretAccessKey: '...',
region: 'us-east-1'
}))
当我尝试从AWS SES控制台发送测试邮件发送电子邮件,它的工作原理。但是当我通过代码发送时,它会进入垃圾邮件。我已经按照步骤“启用easy 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...'
}
});
*我是否需要在通过代码发送时明确签名电子邮件?*当然不是。您是否检查并比较了两封电子邮件之间的标题(在您的电子邮件客户端中)?垃圾邮件文件夹中的着陆可能出于任何原因,与DKIM无关。 –
@ Michael-sqlbot如何比较标题?你的意思是发送者的查看详情吗?我注意到通过代码发送的电子邮件缺少由字段签名。看起来像库nodemailer没有正确地签名,我所做的是直接使用AWS SDK并调用'setIdentityDkimEnabled',它现在可以工作 –
我指的是比较收到的消息中的标题。例如,在桌面浏览器上的GMail中,这称为“显示原始”。 –