使用 AWS SES/SNS 接收电子邮件

Recieving emails with AWS SES/SNS

我正在尝试在我正在构建的 rails 应用程序中创建电子邮件至应用程序消息。我正在使用 SES 接收入站电子邮件,然后使用 SNS 将它们发送到我的 rails 应用程序,我正在尝试处理它们。

我可以在我的生产日志中看到 SNS 正在访问我的端点,但 SNS 没有发送任何 json 请求。我什至不知道如何开始调试它。

这些是 SNS 发送到 POST "/email_processor"

的参数
Processing by EmailsController#recieved as HTML

 <ActionController::Parameters {"controller"=>"emails", "action"=>"recieved"} permitted: false>

不使用 SNS,而是配置为在收到电子邮件时触发 Lambda 函数。然后使用 Lambda 函数,您可以使用所需的邮件参数调用 rails 后端。

由于电子邮件可能很大,您只需配置 SES,然后将其保存到 S3 存储桶中,该存储桶又可用于触发 lambda 函数或在 Ruby 中创建延迟作业以读取和完成工作后删除文件!

我找到了一个解决方案,但我不知道它为什么有效。我有 SES 触发器和触发 lambda 的 SNS,后者将电子邮件发送到我的端点。我不知道为什么 SNS 没有将任何 json 及其请求发送到我的端点。 SNS 确实将完整的 json 有效负载发送到 lambda。我对这项工作不满意,但它确实有效。