如何解决AWS SES 签名不匹配
我使用 nodemailer 和 AWS SES 服务来创建 nodemailer 传输器。当我尝试使用 SES SMTP 发送电子邮件时,它没有出现错误,整个代码可以正常运行,但使用 AWS SES 传输器时,它出现 SignatureDoesNotMatch 错误。而 SMTP 传输器和 SES 传输器中的 Access-key-ID 和 Secret-Access-Key 是相同的。
这是我的代码示例
AWS.config.update({
accessKeyId: "<<Access-Key-ID>>",secretAccessKey: "<<Secret-Access-Key>>",region: "us-west-2",});
// Instantiate SES.
const ses = new AWS.SES();
// Check verified email
ses.listVerifiedEmailAddresses(function (err,data) {
if (err) {
console.log(err);
} else {
console.log({ Message: "Here is list of all verified emails",data });
}
});
// Verify customer email address
const params = {
EmailAddress: activeAlert.destination,};
ses.verifyEmailAddress(params,function (err,data) {
if (err) {
console.log(err);
} else {
console.log({ message: "Email verification successfull",data });
}
});
// Create nodemailer SES transporter
// AWS SES transport
let transporter = nodemailer.createTransport({
SES: new AWS.SES({ apiVersion: "2010-12-01",region: "us-west-2" }),});
// While SMTP transporter is here just for example. I tried both of them but SMPT works fine for me.
let transporter = nodemailer.createTransport({
host: "<<AWS HOST>>",port: 465,auth: {
user: "<<Access-Key-ID>>",pass: "<<Secret-Access-Key>>",},});
电子邮件部分与 SMTP 配合良好,但我想使用 AWS-SDK 的功能,这也给了我 SignatureDoesNotMatch 错误。我不知道我想念什么。我想消除调用 AWS-SDK 函数时的 SignatureDoesNotMatch 错误(listVerifiedEmailAddresses、verifyEmailAddress)。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。