Mengakses Nilai JSON Bersarang Dalam dalam Go
Dalam Go, pengendalian struktur JSON yang kompleks boleh menjadi mencabar kerana sifat dinamik jenis antara muka . Untuk kunci dan nilai JSON yang bersarang dalam, pertimbangkan pakej "github.com/bitly/go-simplejson" menawarkan pendekatan yang lebih mudah.
Untuk menggunakan go-simplejson, pasang pakej menggunakan:
<code class="bash">go get github.com/bitly/go-simplejson</code>
Dengan pakej ini, anda boleh mengakses nilai JSON bersarang dalam menggunakan kaedah Get dan GetIndex. Sebagai contoh, untuk mendapatkan semula parameter "masa" daripada JSON yang disediakan:
<code class="go">json, err := simplejson.NewJson([]byte(msg)) if err != nil { panic(err) } time, _ := json.Get("args").GetIndex(0).Get("time").String() log.Println(time)</code>
Untuk mengisytiharkan struct jenis bagi struktur data yang kompleks, anda boleh menggunakan pakej "pengekodan/json". Contohnya, struct berikut mewakili mesej JSON:
<code class="go">type Message struct { Name string `json:"name"` Args []map[string]interface{} `json:"args"` }</code>
Anda kemudian boleh menyahmarshal mesej JSON ke dalam struct ini:
<code class="go">m := Message{} if err := json.Unmarshal([]byte(msg), &m); err != nil { panic(err) }</code>
Atas ialah kandungan terperinci Bagaimana untuk Mengakses Nilai JSON Bersarang Dalam dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!