为了账号安全,请及时绑定邮箱和手机立即绑定

将嵌套结构元组化为 JSON

将嵌套结构元组化为 JSON

Go
DIEA 2021-09-10 15:37:10
如何将嵌套结构编组为 JSON?我知道如何在没有任何嵌套结构的情况下编组结构。但是,当我尝试使 JSON 响应如下所示时:{"genre": {"country": "taylor swift", "rock": "aimee"}}我遇到了问题。我的代码如下所示:走:type Music struct {  Genre struct {     Country string    Rock string  }}resp := Music{  Genre: { // error on this line.    Country: "Taylor Swift",    Rock: "Aimee",  },}js, _ := json.Marshal(resp)w.Write(js)但是,我收到错误Missing type in composite literal我该如何解决?
查看完整描述

3 回答

?
元芳怎么了

TA贡献1798条经验 获得超7个赞

这是您的类型的复合文字:


resp := Music{

    Genre: struct {

        Country string

        Rock    string

    }{ 

        Country: "Taylor Swift",

        Rock:    "Aimee",

    },

}


您需要在文字中重复匿名类型。为了避免重复,我建议为 Genre 定义一个类型。此外,使用字段标签在输出中指定小写键名。


type Genre struct {

  Country string `json:"country"`

  Rock    string `json:"rock"`

}


type Music struct {

  Genre Genre `json:"genre"`

}


resp := Music{

    Genre{

        Country: "Taylor Swift",

        Rock:    "Aimee",

    },

}


查看完整回答
反对 回复 2021-09-10
  • 3 回答
  • 0 关注
  • 182 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信