1 回答

TA貢獻(xiàn)1816條經(jīng)驗(yàn) 獲得超4個(gè)贊
您的示例 JSON 數(shù)據(jù)對(duì)應(yīng)于 。[91 34 123 ...["{
這表明您收到的 JSON 可能無(wú)效 - 它是字符串?dāng)?shù)組,而不是對(duì)象數(shù)組??雌饋?lái)你的對(duì)象在編組時(shí)可能會(huì)被引用。
它可以解組為 ,而不是 。這幾乎可以肯定是不可取的,并且在對(duì)源數(shù)據(jù)進(jìn)行編碼時(shí)是錯(cuò)誤的。最好的方法是修復(fù)導(dǎo)致 JSON 對(duì)象被引用為字符串的錯(cuò)誤。[]string[]ActUser
或者,如果您必須從有缺陷的 JSON 中提取數(shù)據(jù),則可以:
var strs []string
if err := json.Unmarshal(bodyBytes, &strs); err != nil {
log.Fatal(err)
}
if len(strs) == 0 {
log.Fatal("missing ActUser object")
}
var user ActUser
if err := json.Unmarshal([]byte(strs[0]), &user); err != nil {
log.Fatal(err)
}
另外,我建議使用 來(lái)顯示原始 JSON 數(shù)據(jù)以進(jìn)行調(diào)試(比 ASCII 代碼列表容易得多)。fmt.Printf("%s\n", bodyBytes)
- 1 回答
- 0 關(guān)注
- 83 瀏覽
添加回答
舉報(bào)