如何在NodeJS中使用Amazon SES向100位用户发送内容不同的定制邮件?
利用Amazon SES批量发送个性化模板邮件的实现方法
针对你需要给100+用户发送替换了{{username}}、{{email}}变量的自定义模板邮件需求,可以按以下步骤实现:
1. 首先创建SES自定义模板
你可以通过SES控制台、AWS CLI或者对应语言的SDK创建模板,直接使用你预设的变量作为占位符即可,模板支持配置主题、纯文本正文、HTML正文三个部分,所有位置都可以插入变量。
- 示例CLI创建命令:
aws ses create-template --cli-input-json file://your-template-config.json
- 模板配置文件
your-template-config.json参考结构:
{ "Template": { "TemplateName": "UserCustomNotice", "SubjectPart": "Hi {{username}},这是你的专属通知", "TextPart": "dear {{username}},\n\nYour email is {{email}}\n", "HtmlPart": "<p>dear {{username}},</p><p>Your email is {{email}}</p>" } }
2. 整理收件人变量映射表
把所有收件人的信息整理成和模板变量对应的映射结构,每个收件人对应独立的变量值,示例结构如下:
[ { "Destination": { "ToAddresses": ["user001@domain.com"] }, "ReplacementTemplateData": "{\"username\":\"用户A\",\"email\":\"user001@domain.com\"}" }, { "Destination": { "ToAddresses": ["user002@domain.com"] }, "ReplacementTemplateData": "{\"username\":\"用户B\",\"email\":\"user002@domain.com\"}" } ]
3. 调用批量发送接口完成投递
直接使用SES提供的SendBulkTemplatedEmail接口即可完成批量发送,单次调用最多支持50个收件人,100+用户只需要分2-3次调用即可,也可以直接通过SDK循环处理所有收件人列表。
注意事项:
- 提前确认你的SES账号已经移出沙箱环境,否则只能给已经在SES中验证过的邮箱地址发信
- 发送频率不要超过你SES账号的发送配额上限,避免被限流
- 可以按需开启SES的投递反馈通知,追踪退信、投诉、打开、点击等事件
内容的提问来源于stack exchange,提问作者Adarsh Goyal
相关产品推荐
相关产品推荐

