You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Serverless框架中API Gateway非Lambda代理集成模板映射失效求助

问题:Serverless框架下Lambda非代理集成的响应模板不生效

我用Serverless框架搭建Lambda函数和API Gateway,部分接口因为要精细控制Cognito返回的claims,所以指定了integration: "lambda"。

我知道非代理Lambda集成默认总是返回200,但可以通过模板映射修改响应。现在遇到的情况是:Serverless已经自动生成了多个响应配置,当Lambda抛出Error("[400] my bad request")异常时,API Gateway能正确返回400状态码,响应体是默认格式:{"errorType": "..", "errorMessage": "[400] my bad request", ...}。

但我尝试添加模板映射规则(比如{"message": $input.json('$.errorMessage')}甚至简单的{"msg": "foo"}),完全没有效果,响应内容和格式都没变化。

附上我的Serverless配置代码:

http: {
  integration: "lambda",
  method: 'post',
  path: 'user/privateAPI',
  request: {},
  cors: true,
  authorizer: {
    name: "PrivateAuthorizer",
    type: "COGNITO_USER_POOLS",
    arn: {
      "Fn::GetAtt": ["UserPool", "Arn"],
    },
    claims: ["email"]
  }
}

控制台截图:
控制台截图1
控制台截图2

内容的提问来源于stack exchange,提问作者yoad w

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.11 20:22:23