Толчок получить значение пары ключ-значение, где ключ равен хосту в массиве пар ключ-значение - PullRequest
0 голосов
/ 27 января 2020

У меня есть массив пар значений ключа в моем объекте json, и мне нужно вытащить установленное значение, основываясь на том, что ключ равен хосту.

{
 "pairs" : [ {
          "key" : "Host",
          "value" : "site-a"
        }, {
          "key" : "User",
          "value" : "user42"
        }
}

Я не могу сопоставить в зависимости от позиции, так как это может быть где угодно в массиве пар, и массив может различаться по размеру.

My Current Jolt spe c выглядит, но просто перечисляет каждую пару:

[
  {
    "operation": "shift",
    "spec": {
      "requestHeaderFields": {
        "*": {
          "value": "@(1,key)"
        }
      }
    }
  }
]

Текущий вывод:

{
  "Host" : "site-a",
  "User-Agent" : "user42"
}

Мой желаемый вывод будет быть следующим, отмечая изменение имени поля:

{
  "HostSite" : "site-a",
}

Мне интересно, нужно ли мне сначала выполнить операцию модификации-перезаписи-беты, а затем сдвиг?

1 Ответ

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

Этот толчок сделает свое дело. Идея состоит в том, чтобы проверить, когда ключ имеет значение Host, а затем получить значение:

[
  {
    "operation": "shift",
    "spec": {
      "pairs": {
        "*": {
          "key": {
            "Host": {
              "@(2,value)": "HostSite"
            }
          }
        }
      }
    }
  }
]
...