【发布时间】:2020-02-14 09:51:49
【问题描述】:
查看https://serverless.com/framework/docs/providers/aws/events/apigateway/#custom-response-templates 此处的文档,似乎没有太多关于设置这些模板的详细信息。
我目前正在寻找删除默认的application/json 内容类型,它是在创建处理程序的集成响应期间生成的(如下图所示),并将其替换为text/html。是否有定义的语法来隐藏某处?或者这种级别的定制在当前框架范围内是不可能的?
这是我在 serverless.yml 中定义的端点
events:
- http:
method: any
path: /
integration: lambda
request:
region: ${env:AwsRegion}
response:
headers:
Content-Type: "'text/html'"
template: $input.path('body')
- http:
method: any
path: /{proxy+}
作为猜测,我确实尝试过像这样修改规范,但它引发了语法错误:
template:
text\html: $input.path('body')
【问题讨论】:
-
我认为对于响应模板,您只需将其放入
template中即可。template: $input.path('body')。响应的类型由Content-Type处理。对于请求模板,您可以根据内容类型使用不同的模板,在这种情况下,您可以按照自己的尝试进行操作。
标签: aws-lambda aws-api-gateway serverless-framework