给定一个输入JSON文件,它有两个数组:
[
{
"objects": ["obj1","obj2","obj3","obj4","obj5"]
},
{
"types": ["kpi1","kpi2","kpi3","kpi4"]
}
]
我如何转换它,因为输出是一个JSON,它将对象数组中的每个元素分组到单个对象中,其中所有元素都来自类型array.
预期成果应当是:
{
"new":[
{ "obj":"obj1","types": ["kpi1","kpi2","kpi3","kpi4"] },
{ "obj":"obj2","types": ["kpi1","kpi2","kpi3","kpi4"] },
{ "obj":"obj3","types": ["kpi1","kpi2","kpi3","kpi4"] },
{ "obj":"obj4","types": ["kpi1","kpi2","kpi3","kpi4"] },
{ "obj":"obj5","types": ["kpi1","kpi2","kpi3","kpi4"] }
]
}
我已经编写了Jolt规范,但只是将类型数组附加到新的[]列表中.它不会更新每个对象.
{
"operation": "shift",
"spec": {
"*": {
"objects": {
"*": "new[].obj"
},
"types": {
"@": "new[].&"
}
}
}
}
输出为:
{
"new" : [ {
"obj" : "obj1"
}, {
"obj" : "obj2"
}, {
"obj" : "obj3"
}, {
"obj" : "obj4"
}, {
"obj" : "obj5"
}, {
"types" : [ "kpi1", "kpi2", "kpi3", "kpi4" ]
} ]
}