Rumah >pembangunan bahagian belakang >Golang >Bagaimana untuk Membetulkan Ralat \'aksara tidak sah \'ï\' mencari permulaan nilai\' Semasa Menyahmarshall JSON?
Ralat Aksara Tidak Sah Semasa Menyahmarshal JSON dengan UTF-8 BOM
Apabila cuba menyahmarshal data JSON yang diterima daripada permintaan HTTP, anda mungkin menghadapi ralat: "aksara 'ï' tidak sah mencari permulaan nilai."
Ralat ini timbul apabila pelayan menghantar rentetan teks UTF-8 yang termasuk Tanda Pesanan Bait (BOM). BOM menunjukkan jenis pengekodan tetapi harus dilucutkan sebelum menyahkod.
Penyelesaian:
Alih keluar BOM daripada data JSON dengan menggunakan kod berikut:
body = bytes.TrimPrefix(body, []byte("\xef\xbb\xbf")) // Or []byte{239, 187, 191}
Adalah penting untuk ambil perhatian bahawa BOM UTF-8 yang ditafsirkan sebagai rentetan ISO-8859-1 menghasilkan aksara , menerangkan aksara "ï" dalam mesej ralat.
Dengan mengalih keluar BOM, data boleh berjaya dipisahkan ke dalam struktur data yang dikehendaki (TransformTextResponse dalam kes ini).
Atas ialah kandungan terperinci Bagaimana untuk Membetulkan Ralat \'aksara tidak sah \'ï\' mencari permulaan nilai\' Semasa Menyahmarshall JSON?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!