Integration Response无法映射项目数组

时间:2017-07-28 18:36:52

标签: amazon-web-services aws-api-gateway

我的目标是能够生成csv文件。现在只是尝试返回JSON中的id列表。

我正在努力映射回复,所以我的JSON是:

{
"items": [
        {
            "id": "2017-07-02_n_Eleana Qorgyle",
            "groupId": "n_2017-07"}
]
}

我的模特是

{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "title": "Log",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": { "type": "string" }
        }
      }
    }
  }
}

我的速度模板是......

#set($inputRoot = $input.path('$'))
{
  "items" : [
##TODO: Update this foreach loop to reference array from input json
#foreach($elem in $inputRoot.items)
 {
    "id" : "foo"
  } 
#if($foreach.hasNext),#end
#end
]
}

但是,我得到了这个输出:

{
    "items": []
}

我错过了什么吗? $ inputRoot.body输出所有内容,但迭代是一个问题。

1 个答案:

答案 0 :(得分:0)

我认为这就是你要做的事情:

  #set($inputRoot = $input.path('$')) {
      "items" : [
       #foreach($elem in $inputRoot.items){
        "id" : "$elem.get('id')"
       } 
       #if($foreach.hasNext),#end
       #end
      ]
   }

谢谢!