我有一些想要使用 API Gateway 转换的简单数据:
{
"data": [
{"id":"1", "name":"Foo"},
{"id":"2", "name":"Bar"},
{"id":"3", "name":"Dead"},
{"id":"4", "name":"Beef"}
]
}
我能够循环数据:
#foreach($elem in $input.path('$.data'))
{
"Data": $elem,
"Foo": "Bar"
}#if($foreach.hasNext),#end
#end
预期结果是:
{"Data": {"id":"1", "name":"Foo"}, "Foo": "Bar"},
{"Data": {"id":"2", "name":"Bar"}, "Foo": "Bar"},
{"Data": {"id":"3", "name":"Dead"}, "Foo": "Bar"},
{"Data": {"id":"4", "name":"Beef"}, "Foo": "Bar"}
然而,实际结果是:
{"Data": {id=1, name=Foo}, "Foo": "Bar"},
{"Data": {id=2, name=Bar}, "Foo": "Bar"},
{"Data": {id=3, name=Dead}, "Foo": "Bar"},
{"Data": {id=4, name=Beef}, "Foo": "Bar"}
$elem
产生{id=1, name=Foo}
这似乎是对象被字符串化的内容。我想在 JSON 中使用它,我该如何实现?
我已经尝试过,$elem.stringify()
但这不起作用。$input.json($elem)
$elem.json()