Unmarshaling неправильный файл JSON - PullRequest
0 голосов
/ 17 июня 2019

У меня проблема с демаршализацией ответа JSON от одного из API. API возвращает массив простых объектов. Имеет структуру:

  "dataFields": [
    {
      "key": "Example_key1",
      "value": "Example_value3"
    },
    {
      "key": "Example_key2",
      "value": "Example_value3"
    },
    {
      "key": "Example_key3",
      "value": "Example_value3"
    }
  ]

Как правило, всегда есть 2 строки (возможно, нуль вместо строки, но это не проблема).

К сожалению, недавно провайдер ввел новое поле, которое выглядит так:

{
  "key": "Example_key4",
  "value": false
}

Теперь я не могу распаковать его на простой демонтаж структуры, которую я использовал ранее:

type DataField struct {
Value string `json:"value,omitempty"`
Key   string `json:"key,omitempty"`
}

Можете ли вы предложить мне, как можно распаковать что-то подобное?

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

1 Ответ

0 голосов
/ 18 июня 2019

Проблема была решена с помощью структуры:

type DataField struct {
Value interface{} `json:"value,omitempty"`
Key   string      `json:"key,omitempty"`
}
...