通过 Groovy HTTP 请求后,我有地图列表 我需要为每个元素添加一个新列表

after HTTP request via Groovy i have list of maps I need to add a new list to each element

在一个 HTTP Get 请求后,我创建了一个地图列表,其 ID 如下所示

for (i=0; i<response.data.size(); i++){
    def tempMap = [:];
    tempMap['id'] = response.id[i];
    tempMap['name'] = response.name[i];
    listOfMaps.add(tempMap);
}

listOfMaps=[[id:1, name:123], [id:2, name:456]]

然后我使用该 ID 执行 GET HTTP 请求以获取如下版本列表:

def myVerList = parser.parseText(response)
println(myVerList);

[[version:1.0.0, createdAt:Mon Jul 15 2019 15:51:48 GMT+0200], [version:2.0.1, createdAt:Mon Jul 15 2019 15:25:48 GMT+0200], [version:2.0.0, createdAt:Mon Jul 15 2019 14:51:48 GMT+0200], [version:1.3.0, createdAt:Mon Jul 15 2019 13:51:48 GMT+0200], [version:1.1.0, createdAt:Mon Jul 8 2019 18:22:48 GMT+0200]]

我需要将这个新列表添加到上面给定的 ID。

最终结果应该是这样的:

[

[id:1, name:123],  [[version:1.0.0, createdAt:Mon Jul 15 2019 15:51:48 GMT+0200], [version:2.0.1, createdAt:Mon Jul 15 2019 15:25:48 GMT+0200], [version:2.0.0, createdAt:Mon Jul 15 2019 14:51:48 GMT+0200], [version:1.3.0, createdAt:Mon Jul 15 2019 13:51:48 GMT+0200], [version:1.1.0, createdAt:Mon Jul 8 2019 18:22:48 GMT+0200]]], 

[id:2, name:456],  [[version:2.0.0, createdAt:Mon Jul 15 2019 15:51:48 GMT+0200], [version:2.0.1, createdAt:Mon Jul 15 2019 15:25:48 GMT+0200], [version:2.0.0, createdAt:Mon Jul 15 2019 14:51:48 GMT+0200], [version:1.3.0, createdAt:Mon Jul 15 2019 13:51:48 GMT+0200], [version:1.1.0, createdAt:Mon Jul 8 2019 18:22:48 GMT+0200]]

]

如何在我的 JSR232 post 处理器中 Groovy 出现问题?

我试过了,但它有重复的数据

def response = prev.getResponseDataAsString();
def myJson = parser.parseText(response)

for(item in listOfMaps){
    if (item["id"] == vars.get("thatId")) {  item["versions"]=myJson;   }
        newList.add(item)
}

vars.putObject("newList",newList);

唯一的是newList有两组条目

您需要比较整数:

if (item["id"] == Integer.parseInt(vars.get("thatId"))) {