Rumah >pembangunan bahagian belakang >Golang >Bagaimana untuk Unmarshal JSON dengan Kunci Dinamik dalam Go?
JSON Unmarshal dengan Dynamic Key
Unmarshalling JSON dengan kekunci dinamik yang tidak boleh ditangkap sebagai medan statik dalam struct boleh dicapai dalam Pergi menggunakan a peta.
Contoh:
Pertimbangkan data JSON berikut:
{ "any string" : { "a_known_string" : "some value", "b_known_string" : "another value" } }
Dan struct:
type X struct { A string `json:"a_known_string"` B string `json:"b_known_string"` }
Penyelesaian:
Untuk menangkap kunci dinamik serta nilai yang diketahui, gunakan peta dan bukannya struct:
import "encoding/json" var m map[string]X err := json.Unmarshal([]byte(jsonStr), &m) if err != nil { // Handle error } // Access the data using the dynamic key dynamicKeyData := m["any string"]
Dalam senario ini, peta[rentetan]X jenis membenarkan kunci dinamik "mana-mana rentetan" ditangkap bersama-sama dengan nilai yang diketahui dalam struktur X.
Atas ialah kandungan terperinci Bagaimana untuk Unmarshal JSON dengan Kunci Dinamik dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!