Go语言返回结构体数组为JSON响应为空的问题排查
Go结构体JSON序列化返回空的问题解决
你遇到的问题核心是结构体字段未导出:Go语言中,小写开头的字段属于包私有成员,标准库encoding/json无法访问这些字段,所以序列化时会直接忽略,最终返回空JSON。
修正方案
把结构体的字段首字母改为大写(转为导出字段),如果想让JSON中的键保持小写格式,可以通过结构体标签指定:
type RepoStars struct { Name string `json:"name"` Owner string `json:"owner"` Stars int `json:"stars"` }
对应的数组定义也要同步修改:
repoItems := []RepoStars{}
保持原有的序列化代码不变,就能正常将结构体数组序列化为包含字段的JSON响应了。
内容的提问来源于stack exchange,提问作者Yoni Mayer
相关产品推荐
相关产品推荐

