无法将json映射到golang结构

问题描述 投票:-1回答:3

我有一个json流如下...

[
  {
    "page": 1,
    "pages": 7,
    "per_page": "2000",
    "total": 13200
  },
  [
    {
      "indicator": {
        "id": "SP.POP.TOTL",
        "value": "Population, total"
      },
      "country": {
        "id": "1A",
        "value": "Arab World"
      },
      "value": null,
      "decimal": "0",
      "date": "2019"
    },
    {
      "indicator": {
        "id": "SP.POP.TOTL",
        "value": "Population, total"
      },
      "country": {
        "id": "1A",
        "value": "Arab World"
      },
      "value": "419790588",
      "decimal": "0",
      "date": "2018"
    },
   ...
   ]
]

[我正在尝试对其进行解码...所以我具有以下结构...但是我一直在“无法将数组解组为struct {P struct ...“类型的Go值

type Message []struct {
        P struct {
                Page int
        }
        V []struct {
                Indicator struct {
                        Id    string
                        Value string
                }
                Country struct {
                        Value string
                }
                Value   string
                Decimal string
                Date    string
        }
}

我的结构看起来与json匹配……但显然不匹配!有什么想法吗?

我有一个json流,如下... [{{“ page”:1,“ pages”:7,“ per_page”:“ 2000”,“ total”:13200},[{“ indicator”:{“ id “:” SP.POP.TOTL“,” value“:” ...

json go decode unmarshalling
3个回答
0
投票

查看您的结构,您对应的JSON应该看起来像这样。


0
投票

因为您的json数组具有两种不同的类型,首先将它们解组为[]json.RawMessage,然后为两种类型解组它们。


0
投票

作为poWar said,您实际拥有的JSON是类型不同的对象列表。因此,您必须解组到能够容纳不同对象类型的对象,例如interface{}或(因为存在is

© www.soinside.com 2019 - 2024. All rights reserved.