需要注意的是 json 結構體里面的字段必須是大寫字母開頭,否則是不會返回的。
我們可以起個別名:
type person struct { Name string `json:"name"` Age int `json:"age"` } type JsonResponse1 struct { Data [2]person `json:"data"` }
這樣最后返回的 json 對象的 key 就是小寫字母開頭的了
package controllers import ( "github.com/astaxie/beego" ) type LoggerController struct { beego.Controller } type person struct { Name string `json:"name"` Age int `json:"age"` } type JsonResponse struct { Data []person `json:"data"` } func (c *LoggerController) Get() { var jsonResponse JsonResponse var persons []person persons = append(persons, person{"awks", 23}) persons = append(persons, person{"ruby", 25}) jsonResponse.Data = persons c.Data["json"] = &jsonResponse c.ServeJSON() }
響應: