首頁 > 後端開發 > Golang > 如何在 Go 中使用可變數組字段類型解組 JSON?

如何在 Go 中使用可變數組字段類型解組 JSON?

Barbara Streisand
發布: 2024-12-01 04:51:09
原創
434 人瀏覽過

How to Unmarshal JSON with Variable Array Field Types in Go?

在 Go 中使用可變數組字段類型解組 JSON

在 Go 中,JSON 資料被解組到預先定義的結構中。但是,當金鑰值的類型在請求之間可能有所不同時,某些 API 回應可能會帶來挑戰。例如,API 可能傳回特定鍵的內聯物件或物件參考。

要處理這種可變性,請考慮使用以下方法:

type Data struct {
    MyKey []interface{} `json:"mykey"`
}
登入後複製

此結構解組兩個內聯物件以及對介面數組的物件參考。透過在解組後使用類型開關,您可以確定數組中每個元素的實際類型:

for _, v := range data.MyKey {
    switch x := v.(type) {
    case string:
        fmt.Println("Got a string: ", x)
    case map[string]interface{}:
        fmt.Printf("Got an object: %#v\n", x)
    }
}
登入後複製

此方法允許您以靈活且慣用的方式解析具有可變數組字段類型的JSON 數據。

以上是如何在 Go 中使用可變數組字段類型解組 JSON?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板