如果值存在,如何只添加标题?

时间:2017-12-07 08:52:37

标签: aws-api-gateway

我的Lambda函数将const router = new VueRouter({ routes: [ { path: '/:question' } ] }) const app = new Vue({ el: '#app', router, watch: { '$route.params.question': function(newVal, oldVal) { alert(newVal === 'my-search-query'); } } }); 正文返回给API网关,但如果用户登录,它还可以返回{data: {...}}

我将标头映射添加到API网关,将该值添加到标头:

{data: {...}, cookie: ...}

现在,如果响应正文没有Set-Cookie: integration.response.body.cookie ,我最终会得到空的set-cookie标题。这一点也适用于通过Header Mapping添加的每个其他标头。

有没有办法只在响应正文中存在值时设置标题?

1 个答案:

答案 0 :(得分:1)

Lambda Proxy Integrations将为您提供所需响应标头的动态控制。

您的Lambda函数需要返回整个HTTP响应,包括状态代码,正文和标题。

http://docs.aws.amazon.com/apigateway/latest/developerguide/set-up-lambda-proxy-integrations.html#api-gateway-simple-proxy-for-lambda-output-format

目前除了使用代理集成之外,无法动态映射标头。