具有未知属性名称的结构的嵌套属性?

我正在使用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的。


繁星点点滴滴
浏览 232回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go