我正在尝试从 AWS SES service using nodemailer in node js 发送电子邮件 .
我收到错误“电子邮件地址未经过验证 . 以下身份登记区域US-EAST-1失败:”
const nodemailer = require('nodemailer');
var sesTransport = require('nodemailer-ses-transport');
var SESCREDENTIALS = {
accessKeyId : "XXX" ,
secretAccessKey : "XXX"
};
var transporter = nodemailer.createTransport(sesTransport({
accessKeyId: SESCREDENTIALS.accessKeyId,
secretAccessKey: SESCREDENTIALS.secretAccessKey,
rateLimit: 5,
serverUrl : 'email-smtp.us-west-2.amazonaws.com'
}));
var mailOptions = {
from: 'FromName <no-reply@domain.com>',
to: 'daiyabhagyashree@gmail.com', // list of receivers
subject: 'Amazon SES Template TesT', // Subject line
html: '<p>Mail message</p>' // html body
};
// send mail with defined transport object
transporter.sendMail(mailOptions, function(error, info){
if( error ) {
console.log(error);
} else {
console.log('Message sent: ' + info);
}
});
请建议我解决这个问题 .
2 回答
https://docs.aws.amazon.com/ses/latest/DeveloperGuide/ses-errors.html
电子邮件地址未经过验证 . 以下身份登记区域区域失败:identity1,identity2,identity3-您尝试从尚未通过Amazon SES验证的电子邮件地址或域发送电子邮件 . 此错误可能适用于"From","Source","Sender"或"Return-Path"地址 . 如果您的帐户仍在Amazon SES沙箱中,则还必须验证除Amazon SES邮箱模拟器提供的收件人之外的每个收件人电子邮件地址 . 如果Amazon SES无法显示所有失败的身份,则错误消息以省略号结尾 . 注意Amazon SES在多个AWS区域中具有 endpoints ,并且每个AWS区域的电子邮件地址验证状态是独立的 . 您必须为要使用的AWS区域中的每个发件人完成验证过程 .
您需要验证电子邮件地址以发送电子邮件 .
Verifying an Email Address
Amazon SES Email Sending Errors