You need to enable JavaScript to run this app. 如何在AWS API Gateway中允许响应头透传
优惠活动
大模型
产品
解决方案
定价
更多

如何在AWS API Gateway中允许响应头透传

根因说明

REST类型的API Gateway默认不会自动透传后端EC2返回的全量响应头,仅会放行少量内置标准头,所有自定义业务头都需要在网关层显式声明映射规则,否则会在转发环节被直接丢弃,不会返回给客户端。

完整配置步骤(REST类型API Gateway)
  • 配置方法响应规则
    找到绑定EC2后端的对应请求方法,进入方法响应配置页,为200 OK状态的响应条目,添加所有需要透传给客户端的响应头参数。头名配置不区分大小写,网关会自动做归一化匹配。
  • 配置集成响应头映射
    进入同一方法的集成响应配置页,找到匹配后端200状态的响应映射分支,在响应头映射配置块中,将刚才在方法响应里声明的头参数,和后端实际返回的头值做绑定,固定映射格式为:
    method.response.header.<自定义头名> = integration.response.header.<后端实际返回的头名>
    举个实际场景:如果EC2后端返回了X-Request-Id: def456的响应头需要透传,对应映射就配置为method.response.header.X-Request-Id 取值为 integration.response.header.X-Request-Id。
  • 重新部署API
    所有配置修改完成后,必须将API重新部署到对应的Stage环境,因为API Gateway的配置变更仅在新的部署快照中生效,不重新部署的话所有修改都不会在网关节点上实际运行。
常见踩坑提醒
  • 仅在方法响应中声明头参数、不做集成值映射的配置完全无效:这种场景下网关会返回对应头名,但头值为空,无法透传后端实际的头内容。
  • 跨域场景不要漏配Access-Control-Expose-Headers:如果API需要支持前端浏览器跨域调用,就算网关已经把自定义头透传到客户端,只要没有在跨域响应里声明允许前端读取这些头,浏览器依然会拦截自定义头的读取权限。
  • 路由配置不自动继承:如果使用了通配路径的资源,每个路径下的方法响应、集成响应都需要单独配置头映射规则,网关不会自动将单个路径的配置同步到其他路径下。

补充:如果使用的是HTTP类型(新版轻量版)API Gateway,不需要像REST API那样逐头手动配置,只需要在对应路由的集成配置中开启响应透传开关,即可自动透传后端返回的全量响应头。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.11.01 05:36:04