在 Amazon API 网关中,我使用正文映射模板来转换请求。我发现跟踪逗号很麻烦(尤其是使用多个可选参数),所以我想出了以下内容:
{
"context": { /* context params */ },
"request": {
#foreach($queryParam in $input.params().querystring.keySet())
"$queryParam" : "$input.params().querystring.get($queryParam)"
#if($foreach.hasNext),#end
#end
}
}
我发现这个问题是,当$input.params().querystring.get($queryParam)
是一个整数(并且不应该用引号括起来)然后它不起作用。这似乎很公平,但是我如何改进它以检查它是否$input.params().querystring.get($queryParam)
是一个字符串,以便我随后可以将它用引号引起来?
要求
http://www.somewebsite.com/apiendpoint?id=4&name=Terry&aliases=[Tel,Terry]
转型
{
"id": "4",
"name": "Terry",
"aliases": "[Tel,Terry]"
}
预期转型
{
"id": 4,
"name": "Terry",
"aliases": ["Tel","Terry"]
}