我有一个使用 API Gateway 和几种方法构建的 REST API。我需要每周POST
对一个方法运行一次请求。/generate-stats
我目前通过 AWS 控制台调用此方法,方法是将请求正文粘贴到方法执行流程图下 API Gateway 中存在的“测试”功能中。
我将如何自动执行此呼叫?每周运行一次的 lambda 会是最简单的解决方案吗?理想情况下,如果请求失败,我可以存储响应或触发警报。
我有一个使用 API Gateway 和几种方法构建的 REST API。我需要每周POST
对一个方法运行一次请求。/generate-stats
我目前通过 AWS 控制台调用此方法,方法是将请求正文粘贴到方法执行流程图下 API Gateway 中存在的“测试”功能中。
我将如何自动执行此呼叫?每周运行一次的 lambda 会是最简单的解决方案吗?理想情况下,如果请求失败,我可以存储响应或触发警报。
如果您想自动执行每周一次的请求,您可能需要考虑使用Amazon EventBridge。
服务本身支持由事件触发(例如新的 PutObject 进入 S3 或正在启动的实例),或者可以基于计划运行。您可能希望使用后者来设置一个 cron 表达式来运行它。
规则的下一部分是目标,在这种情况下是几种方法。
API Gateway 请求是事件中受支持的目标。如果 EventBridge 支持的功能适合您,那么您将能够直接执行请求而无需任何额外服务。
如果需要其他功能,您需要创建一个 Lambda 函数来执行对 API Gateway 的请求。然后,此 Lambda 将成为导致执行相同功能的事件的触发器。
您可以构建一个 Lambda 函数,该函数可以使用代码执行 POST 请求。然后,您可以使用计划事件来计划何时调用 Lambda 函数。使用 CRON 表达式,您可以安排您的 Lambda 每周触发一次。有关详细信息,请参阅: