AWS Api 网关:

AWS Api Gateway:

根据我在此处和其他地方看到的内容,几天前似乎可以添加自定义响应 headers。不幸的是,我似乎找不到任何例子。

我正在使用 lambda (python) 为 API 供电,但我似乎无法获得响应 headers 映射。

任何人都可以提供 2 个基本示例:(1) 如何映射到自定义 header,例如 "X-API-VER: xyz",其中 xyz 来自 lambda 的响应 (2) 如何映射 Set-Cookie header 使用来自 lambda 的 cookie 字符串?

我在 lambda 中试过这个响应:

{
  "X-API-VER": "xyz",
}

然后作为响应映射:

{

    "method.response.header.X-API-VER" : "integration.response.header.X-API-VER",

}

但这只是改变了对同一件事的反应:

{

"method.response.header.X-API-VER" : "integration.response.header.X-API-VER",

}

我似乎无法弄清楚如何从 lambda 响应中提取数据以设置 header,同时将其余的 lambda 响应作为正常直通输出。

如果重要的话,我们正在使用 API 网关的 Web 界面。

有人弄明白了吗?

参考:http://docs.aws.amazon.com/apigateway/latest/developerguide/request-response-data-mappings.html#mapping-response-parameters

在集成响应映射表达式中尝试 "body" 而不是 "header":

integration.response.body.X-API-VER

请参阅此文档以将集成响应映射到 API 网关方法响应:https://docs.aws.amazon.com/apigateway/latest/developerguide/request-response-data-mappings.html#mapping-response-parameters

想通了!看起来我试图在响应映射中执行此操作,而实际上我应该按照此处概述的方式执行 Header 映射:

https://whosebug.com/a/33676951/545447