例如,如果我想为无效参数返回特定的400错误码,或者当lambda函数调用导致创建时返回201。
我希望有不同的HTTP状态码,但是看起来API网关总是返回200状态码,即使lambda函数返回错误。
我希望有不同的HTTP状态码,但是看起来API网关总是返回200状态码,即使lambda函数返回错误。
截至2021年2月有效
设置自定义HTTP状态码的最简单方法是在API Gateway中设置Lambda代理集成。
在API Gateway > 资源 > 操作下拉菜单 > 创建方法 > 选中 Lambda Proxy Integration
并选择适当的Lambda函数。
Lambda
对于异步函数,只需返回一个带有 statusCode
和 body
属性的对象即可。对于同步函数,请使用 callback(null,obj)
;请参阅 完整文档。
export const dummyFunction = async (event, context, callback) =>
{
// ... logic
return {
statusCode: 400,
body: JSON.stringify({...data}),
}
};