【发布时间】:2018-01-15 08:35:22
【问题描述】:
每当我遇到语法错误或只想在我的 AWS Lambda 函数中发送自定义错误时,我都会收到相同的 502 Bad Gateway 响应(内部服务器错误)。
我试过那个简单的代码:
module.exports.saveImage = (event, context, callback) => {
callback("the sky is falling!"); // also tried sending new Error("the sky is falling!")
}
并且仍然得到相同的“内部服务器错误”响应,而不是定义的响应。
这是我在 serverless.yml 文件中的函数:
saveImage:
handler: handler.saveImage
environment:
BUCKET: ${self:custom.bucket}
events:
- http:
path: saveImage
method: post
cors: true,
integration: lambda-proxy
我可能误解了这篇文章的内容吗?它似乎收到了“errorMessage”:“天要塌了!”在 API Gateway 响应中(这就是我所期望的)。
【问题讨论】:
-
您是否配置了 API Gateway 的集成响应部分来处理 Lambda 的响应?
-
我已经用 serverless.yml 配置更新了我的问题。顺便说一句,如果我将错误放在第二个参数中,我可以收到响应,如下所示: callback(null, { body: JSON.stringify( { errorMessage: "my error" }) });那是我们应该如何处理错误吗?我认为我们可以使用第一个参数来发送错误。
标签: javascript amazon-web-services lambda aws-lambda aws-api-gateway