I am go beginner and trying to unmarshal the following json string
[{
"db": {
"url": "mongodb://localhost",
"port": "27000",
"uname": "",
"pass": "",
"authdb": "",
"replicas": [
{
"rs01": {
"url":"mongodb://localhost",
"port": "27001",
"uname": "",
"pass": "",
"authdb": ""
}
},
{
"rs02": {
"url":"mongodb://localhost",
"port": "27002",
"uname": "",
"pass": "",
"authdb": ""
}
}
]
}
}]
here is the struct
type DBS struct {
URL string `json:url`
Port string `json:port`
Uname string `json:uname`
Pass string `json:pass`
Authdb string `json:authdb`
Replicas []DBS `json:replicas`
}
and here is the function
func loadConfigs() []DBS {
var config []DBS
raw, err := ioutil.ReadFile("./config.json")
if err != nil {
fmt.Println(err.Error())
os.Exit(1)
}
json.Unmarshal(raw, &config)
return config
}
The function is returning
{ []}
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…