Rumah > Artikel > pembangunan bahagian belakang > Bagaimana untuk Mencapai JSON Unmarshal Sensitif Huruf dalam Go?
JSON Sensitif Huruf Unmarshal dalam Go
Fungsi json.Unmarshal dalam Go menyediakan cara untuk menyahsiri data JSON ke dalam struct. Secara lalai, Unmarshal melakukan pemadanan tidak sensitif huruf besar-besaran antara kekunci JSON dan nama atau teg medan struktur. Walau bagaimanapun, mungkin terdapat kes yang diingini untuk mempunyai padanan sensitif huruf besar.
Masalah
Andaikan anda menerima data JSON dengan teg seperti "e" dan " E". Anda ingin menyahmarshal objek dengan tag "e" dan abaikan objek dengan "E". Dengan padanan tidak peka huruf besar-kecil lalai, Unmarshal akan menerima kedua-dua teg dan menyahmarshal struct dengan sewajarnya.
Penyelesaian
Malangnya, perpustakaan json standard tidak menyokong case- padanan sensitif untuk Unmarshal. Menurut dokumentasi rasmi:
To unmarshal JSON into a struct, Unmarshal matches incoming object keys to the keys used by Marshal (either the struct field name or its tag), preferring an exact match but also accepting a case-insensitive match.
Oleh itu, tiada cara untuk melumpuhkan padanan tidak peka huruf besar-kecil menggunakan perpustakaan json standard.
Atas ialah kandungan terperinci Bagaimana untuk Mencapai JSON Unmarshal Sensitif Huruf dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!