【发布时间】:2020-05-26 15:20:59
【问题描述】:
如果邮件发送成功与否,用户是否实际收到邮件,我需要维护数据库中的状态, 用于审计目的的电子邮件何时发送、电子邮件内容等。这个怎么做 ? AWS sdk 中有没有这方面的 API?
【问题讨论】:
标签: java spring amazon-web-services spring-boot amazon-ses
如果邮件发送成功与否,用户是否实际收到邮件,我需要维护数据库中的状态, 用于审计目的的电子邮件何时发送、电子邮件内容等。这个怎么做 ? AWS sdk 中有没有这方面的 API?
【问题讨论】:
标签: java spring amazon-web-services spring-boot amazon-ses
它并不像打开它那么简单,但 AWS 确实提供了您需要的所有部件。这就是我目前的做法
关键部分是 #1,您如何处理 #2 和 #3 取决于您 - 如果我必须再做一次,我会使用 Lambda 为我接管 #3,而不是使用在专用 Ec2 实例。
您可以在此处找到有关送货通知的更多信息:
还请记住,跟踪并不完美 - 没有电子邮件跟踪器是 - SES 使用一些与 mailchimp/constant contact 相同的技术来确定电子邮件是否被打开,但它远非万无一失。
【讨论】:
您可以将 Amazon SES 配置为在您收到退回邮件或投诉或发送电子邮件时通知 Amazon SNS 主题。 Amazon SNS 通知采用 JavaScript Object Notation (JSON) 格式,使您能够以编程方式处理它们。
按照步骤操作:
在 SNS 中创建主题
订阅主题以获取传递通知(通知是 以 JSON 格式推送到 AWS SNS 主题)。
通过以下方式之一订阅 SNS:
考虑到需要将JSON参数保存在db表中以供审计,您可以监听HTTP/S或SQS。
JSON 响应将包含有用的信息,如消息 ID、通知类型(如投诉、退回、递送等)。
【讨论】: