我面臨一個(gè)問(wèn)題,我在 Go 中制作了一個(gè) api,一切正常,但我沒(méi)有在郵遞員中獲取數(shù)據(jù)。當(dāng)我在日志中打印數(shù)據(jù)時(shí),我正在正確獲取數(shù)據(jù),但它在郵遞員中顯示空白數(shù)據(jù)。authorizeModel.gofunc GetSkillList() map[string]interface{} { db := GetDB() var ( // id int skillName string ) type SkillList struct { name string } skillList := SkillList{} skillArr := []SkillList{} rows, err := db.Query("select DISTINCT(name) as name from skills where company_id IN ('2') and name != 'Skill Needed' order by name") if err != nil { log.Fatal(err) } defer rows.Close() for rows.Next() { err := rows.Scan(&skillName) if err != nil { log.Fatal(err) } skillList.name = skillName skillArr = append(skillArr, skillList) } response := u.Message(true, "Skill list retrieved successfully") response["data"] = skillArr log.Println(skillArr) response["authorization"] = false return response}authController.govar SkillTagList = func(w http.ResponseWriter, r *http.Request) { resp := models.GetSkillList() u.Respond(w, resp)}路線.gorouter.HandleFunc("/api/v1/authorize/skillTagList", controllers.SkillTagList).Methods("POST")如果你看到 authorizeModel.go 我已經(jīng)在日志中打印了我的數(shù)據(jù),我在日志中成功獲取了該數(shù)據(jù)。但是請(qǐng)看下面的郵遞員截圖。
1 回答

斯蒂芬大帝
TA貢獻(xiàn)1827條經(jīng)驗(yàn) 獲得超8個(gè)贊
你必須重命名
name
為Name
我不確定是什么u.Respond()
,所以我假設(shè)它是您正在使用的某個(gè)框架的輔助函數(shù),并且我假設(shè)u.Respond()
它在內(nèi)部使用 json.Marshal。
如果您的結(jié)構(gòu)有未導(dǎo)出的字段(在您的情況下,字段名稱以小寫字母開(kāi)頭name
),則json.Marshal
無(wú)法訪問(wèn)這些字段,結(jié)果將沒(méi)有name
字段。這就是您在 JSON 中獲取空對(duì)象的原因。
- 1 回答
- 0 關(guān)注
- 152 瀏覽
添加回答
舉報(bào)
0/150
提交
取消