如何在AWS SAM中指定映射模板

时间:2019-06-14 15:24:47

标签: aws-lambda aws-api-gateway aws-sam

我有一个AWS lambda会对以下形式的事件起作用:

{"id": "some-id", "stuff": "bla-bla-stuff-here" }

现在,我想将带有POST的API网关端点附加到形式为/ stuff / {id}的url上,实际的内容将放在正文中。因此,在该方法的集成请求中,有一个映射模板部分,该部分似乎允许以下内容:

{
  "id": $input.params('id'),
  "stuff": $input.body
}

现在,如何在SAM文件中指定此模板?

1 个答案:

答案 0 :(得分:0)

SAM使用到Lambda的代理集成,我认为它不适用于请求/响应映射。如果是这样,则需要在Swagger中将其指定为Serverless :: Api的DefinitionBody属性,因为SAM当前不具有添加请求/响应映射并为您生成Swagger的属性。使用Swagger的最简单方法是检查堆栈中生成的CloudFormation模板。将其复制粘贴到DefinitionBody下的SAM模板中;然后应用必要的Swagger添加。