Преобразование JSON в JSON ключей с использованием Jolt - PullRequest
0 голосов
/ 23 января 2020

Толчок, новичок ie здесь! Я хотел бы преобразовать JSON входные данные из этого шаблона:

[
  {
    "canalId": "",
    "startDate": "",
    "typeCanal": "",
    "origin": "",
    "principal": false,
    "ligne1": "",
    "ligne2": "",
    "ligne4": "",
    "ligne6": ""
  },
  {
    ...
  }
]

в тот же шаблон, только с некоторыми ключами, меняющими имена:

[
  {
    "id_canal": "",
    "startDate": "",
    "media": "",
    "origin": "",
    "principal": false,
    "adrL1": "",
    "adrL2": "",
    "adrL3": "",
    "adrL4": ""
  },
  {
    ...
  }
]

Пока мне удалось либо используйте это spe c:

[
    {
      "operation": "shift",
      "spec": {
        "*": {
          "canalId": "&1.id_canal",
          "typeCanal": "&1.media",
          //More if needed
          "*": "&1.&"
        }
      }
    }
  ]

Но он возвращает мне некоторые индексы, которые мне не нужны, плюс я хотел бы сохранить тот факт, что это массив Json, он же квадрат скобки.

Или этот, но он требует разделения на входящие JSON, чтобы иметь дело только с его частями:

[
  {
    "operation": "shift",
    "spec": {
      "canalId": "id_canal",
      "typeCanal": "media",
      // More if needed
      "*": "&"
    }
  }
]

Но в этом случае я бы хотел, чтобы он стал массив JSON, а не просто объект JSON.

Я использую все это на верблюжьем маршруте, так как это требование, есть ли Spe c, который я мог бы использовать, чтобы сделать трюк? Или, может быть, другая идея, основанная на самом верблюде?

Заранее спасибо!

1 Ответ

0 голосов
/ 24 января 2020

Добавление дополнительной смены после вашей сделало бы хитрость:

[
  {
    "operation": "shift",
    "spec": {
      "*": {
        "canalId": "&1.id_canal",
        "typeCanal": "&1.media",
        //More if needed
        "*": "&1.&"
      }
    }
    },
  {
    "operation": "shift",
    "spec": {
      "*": {
        "*": "[&1].&"
      }
    }
    }
  ]
...