2

我有一个连接到API网关的lambda函数。当我在本地运行它时,它可以工作,当我使用serverless offline进行模拟时,它可以工作。AWS Lambda和API网关端点响应中的调试错误

但对公布开发端点,它返回一个错误500和一个JSON对象,并显示一条错误消息:

{ 
    "message": "Internal server error" 
} 

在CloudWatch的日志,没有错误。在API网关端点测试页面的callstack中,我在流程的Lambda部分中看到了我的正确响应主体,然后当它进入API网关响应步骤时,出现问题。

如何在日志中没有任何错误时调试API网关?

+0

调试实时Lambda实际上是不可行的。您是否看到CloudWatch中的任何日志?即使您的处理程序在第一行失败,您也应该看到一些表示开始时间的输出。 –

+0

你可以发布测试调用输出的完整输出文本吗? (根据需要编辑任何敏感数据) –

回答

1

如果您在节点中编写它,可能是因为您的节点版本与4.3.2(the one that AWS Lambda uses)不同,这就是测试离线和本地工作而不是在AWS Lambda中工作的原因。

这发生在我以前,当时我正在使用let

您可以使用nvm安装节点v 4.3.2以在本地进行测试,或者您可以看看here以查看您允许在代码中使用哪些功能。