AWS API网关:错误429请求太多

nap*_*der 8 api put amazon-web-services aws-lambda

我正在尝试使用AWS API GatewayLambda创建后端系统. 在过去的几天里,我为新的API资源创建了一个PUT方法,其中API Key是一个简单的第一个安全步骤.PUT方法在AWS上调用Lambda函数. 然后我将这个API部署到"prod"阶段进行一些测试.

在最初几天,一切都按预期运行良好:我用postman创建了一个API调用,我收到了我期待的所有数据.但前两天,我开始收到始终429 "太多的请求"的响应.我也创建了一个新阶段,但没有任何改变:同样版本或更新版本的新阶段也总是会出现同样的错误.
该API不能达到任何限制,因为它们被称为每4或5次,而不是每个第二(上CloudWatch的选中).没有循环,它只是一次调用.我认为lambda方面没有错误,因为如果我在AWS API网关控制台中测试API,我就不会收到任何错误(并且lambda过去运行良好,没有来自该版本的新更改).该错误仅显示当我使用外部客户端测试我的api时(在我的情况下它是Postman).

任何人都可以帮助解决这个问题吗?

更新:我刚刚在同一资源上创建了一个POST方法,具有相同的参数和相同的lambda.这是工作.我想知道问题是否与PUT方法有关,或者如果在2天内我的POST方法也会受到同样问题的影响.

Ben*_*ier 5

我有同样的问题。我删除并重新创建了部署。就我而言,它确实有效。

  • 我发现增加计划限制为我解决了这个问题。这个月是10000。我有一个在测试期间触发的递归查询并用完了当月的计划配额。将配额提高到 15000 请求/月允许我继续测试。 (3认同)
  • 我的问题是,我在 Terraform 配置中为现有 API Gateway 阶段添加了一个 default_route_settings 块,以启用详细日志记录。这将“默认路由限制”值设置为 0,即使我的配置中没有它们。(它们过去可能是手动设置的,不确定。)将它们设置为非零值修复了 429 问题。 (3认同)