尽管 return 'success' 响应,node.js 上的 SES 未发送电子邮件

SES on node.js not sending the email although it return 'success' response

我尝试使用 SES 发送电子邮件。收件人地址与发件人地址相同,并在 AWS SES 中验证。

        usersList = [{
            "Destination": {
                "ToAddresses": [
                    "someuserthatisverifiedinSES@abc.xyz"
                ]
            },
            "ReplacementTemplateData": `{ "name":"User1", "message": "Hell no" }`
        }];
        defaultTemplateData = `{ "name":"Student", "message": ` + req.body.message + ` }`;

        var params = {
            Destinations: usersList,
            Source: "someuserthatisverifiedinSES@abc.xyz", /* required */
            Template: `SomeTemplate`, /* required */
            DefaultTemplateData: defaultTemplateData
        };
        // Create the promise and SES service object
        var sendPromise = ses.sendBulkTemplatedEmail(params).promise();

        // Handle promise's fulfilled/rejected states
        return sendPromise.then(
            function (data) {
                console.log('sent successfully');
                console.log(data);
                return data;
            }).catch(
            function (err) {
                console.log('error happened off');
                console.error(err, err.stack);
                return err;
            });
    }

我收到了对此代码的成功响应。

{ ResponseMetadata: { RequestId: '14ada23f-someID-5be700be687f' }, Status: [ { Status: 'Success', MessageId: '010001619e8a79ed-someID-000000' } ] }

但是邮件没有送达。

据我了解,电子邮件 return 成功了,尽管当您创建的模板与您发送的数据集不匹配时它没有发送。也许模板有一个变量,您提供的数据集未处理该变量。

return 值仍然会成功,但它不应该成功。修复该位后,我开始收到电子邮件。 SES 邮件不会轻易进入垃圾箱。