【问题标题】:Invoking lambda from API gateway test, but hitting the endpoint does not invoke the lambda. 500 returned从 API 网关测试调用 lambda,但命中端点不会调用 lambda。 500返回
【发布时间】:2021-10-29 13:53:48
【问题描述】:

我有一个触发 lambda 方法的 api 网关。我正在尝试访问端点,但返回 500,InternalServerErrorException。但是,从未调用过 lambda。

登录 aws 控制台时,我在 api 网关中运行测试接口。我得到一个 502,InternalServerErrorException。日志说 lambda 在 3 秒后超时。查看 cloudwatch 很明显这次调用了 lambda。

我找不到任何文档说明为什么在访问端点时会收到 500 InternalServerErrorException 并且它不会调用 lambda,但我可以使用测试按钮调用它。

任何帮助将不胜感激。我一直在努力解决这个问题。谢谢!

【问题讨论】:

  • 好吧,您必须允许 API Gateway 调用 Lambda 函数:docs.aws.amazon.com/lambda/latest/dg/…。由于 3 秒后超时,您可能需要增加超时时间。或者修复函数。 :)
  • 那么如果我的API网关没有权限调用该函数,我可以从测试接口调用它吗?这似乎很奇怪。
  • 不,关于 5xx 错误的另一种解释在页面下方:docs.aws.amazon.com/lambda/latest/dg/…

标签: amazon-web-services aws-lambda aws-api-gateway


【解决方案1】:

如果您的 API 使用测试按钮正常工作,但您收到此错误,则表明您的 API 未部署。

要部署您的 API,请转到操作 > 部署 API:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-11-27
    • 2020-07-07
    • 2022-11-04
    • 2020-08-21
    • 1970-01-01
    • 2011-08-06
    • 2021-11-30
    • 2017-11-13
    相关资源
    最近更新 更多