第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在 Golang 中解析 JSON 數(shù)據(jù)

在 Golang 中解析 JSON 數(shù)據(jù)

Go
慕桂英3389331 2022-06-01 16:42:30
在 Go 中,我進行 API 調(diào)用并接收回一個 []byte 的完整數(shù)據(jù)。當我使用 打印出數(shù)組時string(res),我可以看到原始 JSON 對象。它看起來像這樣:{"success": true, "data": [{"a": 100, "b": 200, "c": 300},{"a": 200, "b": 400, "c": 600}]}我還創(chuàng)建了一個看起來像這樣的結(jié)構(gòu)type SomethingCool struct {  A int `json:"a"`  B int `json:"b"`  C int `json:"c"`}在來自 API 的響應(yīng)中,我只關(guān)心data對象中包含的信息。我想要做的是遍歷 中的項目data,并為每個對象創(chuàng)建一個新SomethingCool對象。最后,我想返回一個由循環(huán)創(chuàng)建的所有結(jié)構(gòu)組成的數(shù)組data。我怎樣才能做到這一點?
查看完整描述

1 回答

?
ibeautiful

TA貢獻1993條經(jīng)驗 獲得超6個贊

為了訪問dataJSON 的字段,您需要創(chuàng)建一個類似的結(jié)構(gòu)并將 JSON 有效負載解碼到其中。


var incomingJSON struct {

    Data []SomethingCool `json:"data"`

}

當您將 JSON 解組到此結(jié)構(gòu)中時,您應(yīng)該可以將數(shù)據(jù)作為SomethingCools 的切片訪問。


完整程序:


package main


import (

    "encoding/json"

    "fmt"

)


type SomethingCool struct {

    A int `json:"a"`

    B int `json:"b"`

    C int `json:"c"`

}


func main() {

    var response = []byte(`{"success": true, "data": [{"a": 100, "b": 200, "c": 300},{"a": 200, "b": 400, "c": 600}]}`)

    var incomingJSON struct {

        Data []SomethingCool `json:"data"`

    }

    if err := json.Unmarshal(response, &incomingJSON); err != nil {

        fmt.Println("Error: ", err)

    } else {

        fmt.Println("Data: ", incomingJSON)

    }

}


查看完整回答
反對 回復(fù) 2022-06-01
  • 1 回答
  • 0 關(guān)注
  • 97 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號