将嵌套数组转换为顶级数组 JOLT

Transform nested array to top level array JOLT

是否可以转换输入 JSON

{
    "root": {   
        "lang" : "fr-FR",
        "ttp" : "ttp1",
        "net" : "wifi",
        "gps" : [
            {"gpslon" : "1", "gpslat" : "4"},
            {"gpslon" : "2", "gpslat" : "5"},
            {"gpslon" : "3", "gpslat" : "6"}
        ]
    }
}

使用 JOLT 转换到另一个 JSON 文件?

{
  [
    {
     "lang" : "fr-FR",
     "ttp" : "ttp1",
     "net" : "wifi",
     "gpslon" : "1", 
     "gpslat" : "4"
    },
    {
     "lang" : "fr-FR",
     "ttp" : "ttp1",
     "net" : "wifi",
     "gpslon" : "2", 
     "gpslat" : "5"
    },
    {
     "lang" : "fr-FR",
     "ttp" : "ttp1",
     "net" : "wifi",
     "gpslon" : "3", 
     "gpslat" : "6"
    }
  ]
}

换句话说,我想将 "header" 数据(lang、ttp、net)复制到每个数组项 gps。

好的,我找到了解决方案,可能不是很有效

[
  {
    "operation": "shift",
    "spec": {
      "root": {
        "gps": {
          "*": {
            "@": "[&1]",
            "@(2,lang)": "[&1].lang",
            "@(2,ttp)": "[&1].ttp",
            "@(2,net)": "[&1].net"
          }
        }
      }
    }
  }
]