我正在使用JSON将一些值从外部源获取到变量中。
我有一个像这样的类型,json.Unmarshal将值放入:
type Frame struct {
Type string
Value map[string]interface{}
}
var data Frame
解组后,我可以通过以下方式访问类型: data.Type
但是,如果我尝试执行以下操作:
if data.Type == "image" {
fmt.Printf("%s\n", data.Value.Imagedata)
}
编译器抱怨没有这样的值data.Value.Imagedata。
所以我的问题是,我如何根据某些条件引用我知道会存在的Go属性?
做到这一点:
type Image struct {
Filename string
}
type Frame struct {
Type string
Value map[string]interface{}
}
但这不是很灵活,因为我将收到不同Value的。
相关分类