我使用Serveless框架1.5。在Serveless框架中用lambda集成修改響應頭/正文/狀態碼1.5
使用「lambda-proxy集成」,修改響應頭/主體/狀態碼非常簡單。
callback(null, {
status: 200,
headers: {
'STRING_VALUE': 'STRING_VALUE'
},
body: 'STRING_VALUE'
});
但我想PATH_INFO值中使用,所以我用serverless.yml象下面這樣:
functions:
hello:
handler: handler.hello
events:
- http:
path: hello/{hi}
method: get
integration: lambda
request:
parameters:
paths:
hi: true
要獲得PATH_INFO設置必須使用 「拉姆達一體化」。 但我也想修改響應頭/正文/狀態碼的迴應。 我應該如何設置以「lambda集成」修改這些響應值?
問候,
== ==後記
提交的問題後,我發現文件: https://serverless.com/framework/docs/providers/aws/events/apigateway/#lambda-integration
據此,身體可定製:
response:
headers:
Content-Type: "'text/html'"
template: $input.path('$')
但是,對於響應標題,文檔說:
response:
headers:
Content-Type: integration.response.header.Content-Type
Cache-Control: "'max-age=120'"
我使設置與上述相同,和代碼handler.js象下面這樣:
callback(null, {
header: {'Content-Type': 'image/png'}
});
雖然頭CONTENT_TYPE沒有成爲 '圖像/ PNG'。 如何動態修改響應頭?
真的嗎?感謝您的信息,它最近改變了?如果我的記憶力不好,我認爲至少1.3版本不能使用lambda代理中的PATH_INFO ...謝謝! – kochizufan
我檢查了它的工作..我花了很多時間與lambda集成鬥爭,這不是意味着..無論如何謝謝! – kochizufan