我试图将一个键值对映射到一个数组,使用jolt transform spec将每个值区分为一个类型
输入json
{
"testurl": "someurl",
"website": "someurl2"
}
尝试了这个规范
[
{
"operation": "shift",
"spec": {
"testurl": "Urls[].testurl",
"website": "Urls[].website"
}
},
{
"operation": "shift",
"spec": {
"Urls": {
"*": {
"$": "Urls[&1].val"
}
}
}
}
]
预期结果是这样的
[
{
"operation": "shift",
"spec": {
"testurl": "Urls[].testurl",
"website": "Urls[].website"
}
},
{
"operation": "shift",
"spec": {
"Urls": {
"*": {
"$": "Urls[&1].val"
}
}
}
}
]
答案 0 :(得分:3)
是的,您可以将一组Json键,值对转换为数组。
需要2班才能安全。
第一班将所有想要变成数组的属性隔离开来。
第二班可以使用“*”然后匹配所有这些项目并将它们放置一个数组。
规格
[
{
"operation": "shift",
"spec": {
"testurl": "temp.testurl",
"website": "temp.website"
}
},
{
"operation": "shift",
"spec": {
"temp": {
"*": {
"$": "Urls[#2].val",
"@": "Urls[#2].url"
}
}
}
}
]