Rumah > pembangunan bahagian belakang > Golang > Bagaimana untuk unmarshal json dengan medan dan kekunci yang tidak diketahui

Bagaimana untuk unmarshal json dengan medan dan kekunci yang tidak diketahui

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Lepaskan: 2024-02-06 10:33:11
ke hadapan
764 orang telah melayarinya

如何使用未知字段和键解组 json

Kandungan soalan

Dari bahagian hadapan saya mendapat contoh json ini:

{
  "properties":{"unknown key": "unknown value","unknown key2": "unknown value 2"}
}
Salin selepas log masuk

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)
}
Salin selepas log masuk

Kod ini sentiasa mengembalikan peta kosong.


Jawapan betul


Anda harus mengeksport medan struct yang sepatutnya tidak dikawal, contohnya:

type test struct {
    P map[string]string `json:"properties"`
}
Salin selepas log masuk

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!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan