Разбор несоответствующей структуры JSON
Я использую утенка как инструмент для извлечения даты / времени и единиц. Когда я отправляю запрос, как today
, Я получаю (некоторые поля были удалены для удобства чтения):
{"body":"today", "value": {"value":"2019-08-10T00:00:00.000-07:00", "grain":"day", "type":"value"}, "dim":"time"}
Таким образом, я создал эти структуры:
type DucklingEntry struct {
Body string `json:"body"`
Dim string `json:"dim"`
Value DucklingValue `json:"value"`
}
type DucklingValue struct {
Value string `json:"value"`
Grain string `json:"grain"`
Type string `json:"type"`
}
Когда я отправляю запрос с текстовым значением 6 euro
, Я осознаю:
{"body":"6 euro", "value": {"value":6, "type":"value", "unit":"EUR"}, "dim":"amount-of-money"}
Как видите, внутренний value
поле теперь содержит целое число вместо строки. Когда я анализирую строку json, используя показанную структуру, внутренний value
значение будет ""
,
Как я могу объяснить такой противоречивый ответ JSON?