每当我遇到语法错误或仅想在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网关响应中(这就是我所期望的)。
如果使用integration: lambda-proxy
,则需要从Lambda而不是从API Gateway返回正确的错误响应。
在这种情况下,您可以使用已经尝试过的方法:
callback(null, { body: JSON.stringify( { errorMessage: "my error" })
我以为我们可以使用第一个参数发送错误
如果可以使用,可以使用integration: lambda
,serverless.yml
但不可以。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句