Go 嵌入结构,但在json中只有某些字段

Go 嵌入结构,但在json中只有某些字段,go,Go,我有一个要嵌入的结构,但只想对该结构的某些字段进行json编码(并将其小写)。可能吗 : 用例子扩展我的评论 这是可行的,你必须实现接口 例如: func (u *MyStruct) MarshalJSON() ([]byte, error) { return json.Marshal(&struct { Name string `json:"name"` Scheme string `json:"scheme"` }{

我有一个要嵌入的结构,但只想对该结构的某些字段进行json编码(并将其小写)。可能吗

:


用例子扩展我的评论

这是可行的,你必须实现接口

例如:

func (u *MyStruct) MarshalJSON() ([]byte, error) {
    return json.Marshal(&struct {
        Name   string `json:"name"`
        Scheme string `json:"scheme"`
    }{
        Name:   u.Name,
        Scheme: u.Scheme,
    })
}
播放链接:

输出:

{"name":"Bob","scheme":"http"}

如果可行,您可能必须实现自定义和接口。
{"name":"Bob","scheme":"http"}