【发布时间】:2020-10-16 08:32:32
【问题描述】:
有很多关于“lambda”的问题,但我在生活中没有接触过它,所以它可能与这个问题无关。
到目前为止,我所做的只是将一个 swagger json 规范导入 AWS API Gateway,并尽我所能将其配置为连接到我的 REST api。
我的问题是,当我尝试通过测试控制台调用 API 网关端点时,一切正常。
但是为什么我尝试像任何最终用户一样从 AWS 外部查询相同的端点,我得到了这个不起眼的 500 响应。
有趣的是,由于我拥有后端服务,我可以看到日志记录,这清楚地表明返回了成功的 200 响应(应该是第一个屏幕截图中显示的 json 响应)。
所以现在我知道,我得到 500 分是 AWS 的错。但老实说,我不确定问题出在哪里。
以下是此特定端点的所有相关配置屏幕。
方法请求
集成请求
集成响应
方法响应
如果有任何我没有提供的屏幕/设置会有所帮助,请告诉我。
TLDR,api 网关端点在在线控制台 ui 中有效,但在现实生活中无效
【问题讨论】:
-
您需要按照本指南至少为 API Gateway 启用错误日志记录:docs.aws.amazon.com/apigateway/latest/developerguide/… 然后您应该能够再次触发此错误,并在这些日志中找到实际的 API Gateway 错误消息。
-
您可能正在为 API Gateway 使用 AWS Lambda 代理集成,并且您的响应不符合必要的负载响应格式。
-
cloudwatch 集成只需 15 个步骤,对吗?哈哈@MarkB 这是我认为谷歌做得更好的事情之一
-
@Dunedan 这也是我的第一个想法,但是通过 AWS 控制台进行测试时它也应该失败。
标签: amazon-web-services aws-api-gateway