猿问

Golang Facebook对结构的回应

我是GO的新手,我想将json从facebook api转换为struct。


问题在于对象的键是动态的:


{

  "100555213756790": {

    "id": "100555213756790",

    "about": "Noodle Bar & Restaurant",

    "metadata": {

      "fields": [

        {

          "name": "id",

          "description": "asdasdasdasd",

          "type": "numeric string"

        },

        //...

  ,

  "101285033290986": {

    "id": "101285033290986",

    "about": "Smart City Expo World Congress",

    "metadata": {

      "fields": [

        {

          "name": "id",

          "description": "fgddgdfgdg",

          "type": "numeric string"

        },

到目前为止,我所实现的是通过id提取对象并将其转换为地图:


for _, id := range ids {

    fbPages, ok := results[string(id)].(map[string]interface{})

    if ok {

        for k, v := range fbPages {

            fmt.Println(k)

            fmt.Println(v)

        }

    }

}


//json to Page struct?

    type Page struct {

        ID                string   `json:"id"`

        About             string   `json:"about"`

    }


    type Metadata struct {

        Fields      []Field           `json:"fields"`

        Type        string            `json:"type"`

        Connections map[string]string `json:"connections"`

    }


    type Field struct {

        Name        string  `json:"name"`

        Description string  `json:"description"`

        Type        *string `json:"type,omitempty"`

    }

我的问题是:


如何将该映射转换为struct?还是有什么简单的方法可以做我想做的事情?


叮当猫咪
浏览 265回答 1
1回答
随时随地看视频慕课网APP

相关分类

Go
我要回答