为了账号安全,请及时绑定邮箱和手机立即绑定

如何在Go中解析此JSON字符串?

如何在Go中解析此JSON字符串?

Go
慕丝7291255 2021-05-04 17:29:34
有问题的JSON字符串如下所示:{"development":{    "connector":[         {"id":"connector-server-1", "host":"127.0.0.1", "port":4050, "wsPort":3050},         {"id":"connector-server-2", "host":"127.0.0.1", "port":4051, "wsPort":3051},         {"id":"connector-server-3", "host":"127.0.0.1", "port":4052, "wsPort":3052}     ],    "chat":[         {"id":"chat-server-1", "host":"127.0.0.1", "port":6050},         {"id":"chat-server-2", "host":"127.0.0.1", "port":6051},         {"id":"chat-server-3", "host":"127.0.0.1", "port":6052}    ],    "gate":[     {"id": "gate-server-1", "host": "127.0.0.1", "wsPort": 3014}]},"production":{   "connector":[         {"id":"connector-server-1", "host":"127.0.0.1", "port":4050, "wsPort":3050},         {"id":"connector-server-2", "host":"127.0.0.1", "port":4051, "wsPort":3051},         {"id":"connector-server-3", "host":"127.0.0.1", "port":4052, "wsPort":3052}     ],    "chat":[         {"id":"chat-server-1", "host":"127.0.0.1", "port":6050},         {"id":"chat-server-2", "host":"127.0.0.1", "port":6051},         {"id":"chat-server-3", "host":"127.0.0.1", "port":6052}    ],    "gate":[     {"id": "gate-server-1", "host": "127.0.0.1", "wsPort": 3014}]}}我想用这样的代码来解析它:package configimport(    "sync"    "io/ioutil"    "encoding/json"    "errors"    "log")type Service struct {    Id string `json:"id"`    Host string `json:"host"`    Port uint `json:"port"`    QueryPort uint `json:"queryPort"`    WsPort uint `json:"wsPort"`    ServiceType string }type Config struct {    Services []Service    Master Service    Mutex sync.RWMutex}func LoadServers(filepath, env string) (*Config, error) {    // 读取文件    content, err := ioutil.ReadFile(filepath)    if err != nil {        return nil, err    }    configs := make(map[string]map[string][]Service, 0)    err = json.Unmarshal(content, configs)    if err != nil {        return nil, err    }}我希望我的代码将此JSON字符串解析为map[string]map[string][]Service。但它显示错误:json: Unmarshal(non-pointer map[string]map[string][]config.Service)
查看完整描述

2 回答

  • 2 回答
  • 0 关注
  • 281 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信