Dari bahagian hadapan saya mendapat contoh json ini:
{ "properties":{"unknown key": "unknown value","unknown key2": "unknown value 2"} }
Saya mula menghuraikannya dengan map[string]antara muka{} tetapi ia tidak berfungsi. Saya juga tidak tahu berapa banyak yang saya boleh perolehi dalam bidang ini. Boleh 10 atau 1.
Kod:
type test struct { p map[string]string `json:"properties"` } func main() { var t test body := ` { "properties":{"unknown key": "unknown value","unknown key2": "unknown value 2"} } ` json.Unmarshal([]byte(body), &t) fmt.Println(t.p) }
Kod ini sentiasa mengembalikan peta kosong.
Anda harus mengeksport medan struct yang sepatutnya tidak dikawal, contohnya:
type test struct { P map[string]string `json:"properties"` }
Lihathttps://www.php.cn/link/eaf76caaba574ebf8e825f321c14ba29
Atas ialah kandungan terperinci Bagaimana untuk unmarshal json dengan medan dan kekunci yang tidak diketahui. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!