当 JSON 不是“所需”格式时,我发现 GOLANG 中的编组和解组非常令人困惑。例如,在一个 JSON 配置文件(我试图与 Viper 一起使用)中,我有一个如下所示的配置文件:
{
"things" :{
"123abc" :{
"key1": "anything",
"key2" : "more"
},
"456xyz" :{
"key1": "anything2",
"key2" : "more2"
},
"blah" :{
"key1": "anything3",
"key2" : "more3"
}
}
}
其中“事物”可能是另一个对象 n 级下的对象,我有一个 struct :
type Thing struct {
Name string `?????`
Key1 string `json:"key2"`
Key2 string `json:"key2"`
}
我如何去编组 JSON,更具体地说是 viper 配置(使用 viper.Get("things") 来获取Things
类似的数组:
t:= Things{
Name: "123abc",
Key1: "anything",
Key2: "more",
}
我特别不确定如何将密钥作为结构字段