【问题标题】:How to send personalized emails using sendBulkEmail on amazon ses?如何在亚马逊 ses 上使用 sendBulkEmail 发送个性化电子邮件?
【发布时间】:2021-04-23 12:02:32
【问题描述】:

我拥有 SES 设置所需的一切,并且所有请求都在工作。 我现在要做的是使用 replacementData 发送个性化的批量电子邮件。 所以,如果有两个收件人 jane@doe.com 和 johnny@doe.com 我想在模板中替换他们各自的名字。 这样 Jane 收到一封电子邮件,上面写着“Hi Jane”,而 johnny 收到了:“Hi Johnny”。 我知道我可以使用 JSON 数据来做到这一点,但我正在 NodeJS 上实现它,并希望尽可能多地使用 AWS 开发工具包。 我目前使用的代码:

var params = {
    BulkEmailEntries: [ /* required */ {
            Destination: { /* required */
                BccAddresses: [],
                CcAddresses: [],
                ToAddresses: ['jane@gmail.com', 'john@gmail.com']
            },
            ReplacementEmailContent: {
                ReplacementTemplate: {
                    ReplacementTemplateData: `{"name":"Jane"},{"name":"John}`
                }
            },
            ReplacementTags: [{
                    Name: 'Test',
                    /* required */
                    Value: 'test' /* required */
                },
                /* more items */
            ]
        },
        /* more items */
    ],
    DefaultContent: { /* required */
        Template: {
            TemplateData: '{"name":"unknown"}',
            TemplateName: 'testTemplate2'
        }
    },
    DefaultEmailTags: [{
            Name: 'test',
            /* required */
            Value: 'Test' /* required */
        },
        /* more items */
    ],
    FromEmailAddress: 'info@xyz.com',
    ReplyToAddresses: []
};

电子邮件已发送,但两封邮件均显示“Hi Jane”。请帮忙

【问题讨论】:

    标签: node.js amazon-ses bulk-email


    【解决方案1】:

    您能否检查这些电子邮件是否作为不同的邮件发送,就像邮件中没有其他收件人一样。我相信必须有两个目的地,因为您在 ReplacementTemplateData 中使用了两个值。只有一个目的地和两个替换数据。因此,它首先替换了两封电子邮件。我相信这就是问题所在。请确认。

    【讨论】:

    • 感谢 Himmet 原来我只需要复制批量条目数组中的对象条目,文档甚至显示了更多项目,这是一个愚蠢的错误。
    猜你喜欢
    • 2015-06-15
    • 1970-01-01
    • 2012-06-21
    • 1970-01-01
    • 1970-01-01
    • 2013-05-25
    • 2015-08-24
    • 2018-04-01
    • 1970-01-01
    相关资源
    最近更新 更多