首页 > 文章列表 > 使用 Go,在 HTTP 响应中以 JSON 形式返回结构体

使用 Go,在 HTTP 响应中以 JSON 形式返回结构体

381 2024-02-05
问题内容

我在 go 中定义了以下结构:

type repostars struct {
name    string
owner   string
stars   int
}

我创建了一个数组 repoitems := []repostars{} ,其中包含上述结构的多个项目。

这就是 repoitems 的样子:

我正在尝试将这些项目作为 json 响应返回:

w.Header().Set("Content-Type", "application/json")
json.NewEncoder(w).Encode(repoItems)

而且看起来很空

我在这里做错了什么?


正确答案


如果结构字段以小写字母开头,则表示未导出。所有未导出的字段都不会被编码器序列化。

将其首字母改为大写。

type repoStars struct {
    Name string
    Owner string
    Stars int
}