我正在尝试使用节点js 中的nodemailer从 AWS SES服务发送电子邮件。
我收到错误“未验证电子邮件地址。以下身份登记区域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);
}
});
请建议我解决这个问题。
答案 0 :(得分:0)
您需要验证电子邮件地址才能发送电子邮件。
Verifying an Email Address
Amazon SES Email Sending Errors
您正尝试从您的电子邮件地址或域发送电子邮件 尚未通过Amazon SES验证。此错误可能适用于 &#34;来自&#34;,&#34;来源&#34;,&#34;发件人&#34;或&#34;返回路径&#34;地址。如果您的帐户 仍然在Amazon SES沙箱中,您还必须验证每一个 收件人电子邮件地址,但收件人除外 亚马逊SES邮箱模拟器。如果亚马逊SES无法显示所有内容 失败的身份,错误消息以省略号结束。
答案 1 :(得分:0)
https://docs.aws.amazon.com/ses/latest/DeveloperGuide/ses-errors.html
电子邮件地址未经过验证。以下身份登记区域区域失败:identity1,identity2,identity3-您尝试从尚未通过Amazon SES验证的电子邮件地址或域发送电子邮件。此错误可能适用于“发件人”,“来源”,“发件人”或“退货路径”地址。如果您的帐户仍在Amazon SES沙箱中,则还必须验证除Amazon SES邮箱模拟器提供的收件人之外的每个收件人电子邮件地址。如果Amazon SES无法显示所有失败的身份,则错误消息以省略号结尾。 注意 Amazon SES在多个AWS区域中具有端点,并且每个AWS区域的电子邮件地址验证状态是独立的。您必须为要使用的AWS区域中的每个发件人完成验证过程。