使用 AWS Lambda 为 S3 静态网站创建动态联系表单时添加目的地时遇到问题

Facing issues adding destination while creating a dynamic contact form for S3 static website using AWS Lambda

我一直在尝试使用 AWS Lambda、Amazon API Gateway 和 SES 为我的网站创建电子邮件表单。

我按照 AWS blog 中提供的说明进行操作。本文未提供添加目的地和在 mailFwd 与目的地之间创建 link 的说明。

此外,文章中有一部分提到在策略下添加代码片段,以便 SES 可以访问 lambda 函数。我找不到政策部分在哪里。

申请流程如下所示:

JavaScript / HTML -> API Gateway -> AWS Lambda Function mailfwd -> SES

这意味着,您的前端向 API 网关发送 HTTP 请求,网关将 HTTP 事件转发给您的 Lambda 函数,然后您的 Lambda 函数处理来自 HTTP 事件的邮件数据并将其转发给 SES。

为避免混淆:SES 既不调用也不访问您的 Lambda 函数,它只是相反的方式。为了允许 Lambda 函数调用 SES 并发送邮件,您必须将 IAM 策略从博客 post(关于 ses:SendMail 的策略)复制到您的 Lambda 函数的 IAM 角色的策略。 (我承认博客post这里的措辞有点混乱)

除此之外,您不需要在服务之间创建任何链接。您只需要告诉 API 网关在 HTTP 请求到来时调用哪个 Lambda 函数。在这种情况下,您选择文章中提到的 mailfwd 函数:

  1. Select your newly-created resource and choose “create method.” Choose a POST. Here, you will choose our AWS Lambda Function. To do this, select “mailfwd” from the drop down.