viper 映射对象对象中有一个 args byte 实际对应的 是一串子json我该怎么处理呢
您可以根据子json的结构定义一个结构体,并使用json.Unmarshal()函数将args []byte解析成该结构体的实例。例如:
type SubJSON struct {
Field1 string `json:"field1"`
Field2 int `json:"field2"`
// 定义子json的结构体,字段名和标签需要与子json中的对应
}
type ViperObject struct {
Args []byte `json:"args"`
// 定义viper映射对象,包含一个args字段
}
// 解析viper对象的args字段为SubJSON结构体实例
func parseArgs(viperObj ViperObject) (SubJSON, error) {
subJSON := SubJSON{}
err := json.Unmarshal(viperObj.Args, &subJSON)
if err != nil {
return SubJSON{}, err
}
return subJSON, nil
}
这样,您就可以通过调用parseArgs()函数将viper对象的args字段转换为SubJSON结构体实例了
原文地址: https://www.cveoy.top/t/topic/fgEP 著作权归作者所有。请勿转载和采集!