微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

有没有办法使用javascript sdk检查发送的SES电子邮件是否成功发送或退回

如何解决有没有办法使用javascript sdk检查发送的SES电子邮件是否成功发送或退回

我使用 AWS SES 开发工具包以 JavaScript 发送电子邮件。我会让用户调用这个函数,他们需要知道他们的电子邮件是否成功发送。这是我当前的代码

var aws = require("aws-sdk");
let credentials = aws.config.credentials;
aws.config.update({
    region: "us-east-1",});

// Specify a configuration set. 
const configuration_set = "test";

const ses = new aws.SES();

var to = ['bounce@simulator.amazonses.com']
var from = 'tester@gmail.com'

const params = {
    Source: from,Destination: { ToAddresses: to },Message: {
        Subject: {
            Data: "Sending emails through SES"
        },Body: {
            Text: {
                Data: 'Hello world www.google.ca',}
        }
    },ConfigurationSetName: configuration_set
};


ses.sendEmail(params,function (err,data) {
    if (err) throw err
    console.log(data)
    //Do something here to check if email was delivered successfully
})

控制台返回的数据是一个RequestId和一个MessageId。我已经研究过是否可以使用 MessageId 检查电子邮件的传递状态,但似乎并非如此。有没有其他方法可以让调用函数的人知道他们的电子邮件是否已成功发送或退回/未发送。

解决方法

由此代码生成的消息 ID 只会告诉您 SES 已接受该电子邮件,并将尝试将其发送到目的地。当 ses 将消息传递给收件人时,相同的消息 Id 将作为标题插入,这不会告诉您它是否已传递,您需要在已验证身份的 ses 上启用关于传递、投诉、退回的通知。 SES 提供了一个选项,可以通过两种方式通知它,即向 sns 订阅者或返回路径地址。

https://docs.aws.amazon.com/ses/latest/DeveloperGuide/monitor-sending-activity-using-notifications.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。