Jolt 转换 - 小写 JSON 列表中的所有键

Jolt Transformation - lowercase all keys in list of JSONs

如何将这个 json 列表中的所有键都转换为小写

[
  {
    "KEY01": "1111",
    "KEY02": "VALUE01",
    "KEY03": true
  },
  {
    "KEY01": "2222",
    "KEY02": "VALUE02",
    "KEY03": true
  }
]

想要的结果

[
  {
    "key01": "1111",
    "key02": "VALUE01",
    "key03": true
  },
  {
    "key01": "2222",
    "key02": "VALUE02",
    "key03": true
  }
]

我使用了这个 jolt 转换公式,它只生成了一个对象,其值只被转换为小写

[
  {
    "operation": "modify-overwrite-beta",
    "spec": {
      "*": {
        "*": "=toLower"
      }
    }
  }
]

结果

[{
    "KEY01": "1111",
    "KEY02": "value01",
    "KEY03": true
}, {
    "KEY01": "2222",
    "KEY02": "value02",
    "KEY03": true
}]

这会产生预期的结果:

[
  {
    "operation": "shift",
    "spec": {
      "*": {
        "*": {
          "$": "[&2].&1.key",
          "@": "[&2].&1.value"
        }
      }
    }
  },
  {
    "operation": "modify-overwrite-beta",
    "spec": {
      "*": {
        "*": {
          "key": "=toLower"
        }
      }
    }
  },
  {
    "operation": "shift",
    "spec": {
      "*": {
        "*": {
          "value": "[&2].@(1,key)"
        }
      }
    }
  }
]

生成以下内容:

[ 
   {
     "key01" : "1111",
     "key02" : "VALUE01",
     "key03" : true
   }, 
   {
     "key01" : "2222",
     "key02" : "VALUE02",
     "key03" : true
   }
]