Idealnya, temukan pustaka JSON dalam bahasa Anda yang dapat Anda beri makan beberapa struktur data yang sesuai, dan biarkan khawatir tentang cara melarikan diri . Itu akan membuat Anda lebih waras. Jika karena alasan apa pun Anda tidak memiliki perpustakaan dalam bahasa Anda, Anda tidak ingin menggunakannya (saya tidak menyarankan ini¹), atau Anda sedang menulis perpustakaan JSON, baca terus.
Hindarilah menurut RFC. JSON cukup liberal: Satu-satunya karakter Anda harus melarikan diri adalah \
, "
, dan kode kontrol (sesuatu yang kurang dari U + 0020).
Struktur pelarian ini khusus untuk JSON. Anda membutuhkan fungsi spesifik JSON. Semua lolos dapat ditulis sebagai di \uXXXX
mana XXXX
unit kode UTF-16¹ untuk karakter itu. Ada beberapa cara pintas, seperti \\
, yang berfungsi juga. (Dan mereka menghasilkan output yang lebih kecil dan lebih jelas.)
Untuk detail lengkap, lihat RFC .
Pelarian SONJSON dibangun di atas JS, jadi ia menggunakan \uXXXX
, di mana XXXX
adalah unit kode UTF-16. Untuk titik kode di luar BMP, ini berarti menyandikan pasangan pengganti, yang bisa menjadi sedikit berbulu. (Atau, Anda bisa menampilkan karakter secara langsung, karena JSON yang dikodekan adalah teks Unicode, dan memungkinkan karakter khusus ini.)
'
, Anda akan ditakdirkan sejak awal: String JSON hanya dapat dikelilingi dengan"
. Lihat ietf.org/rfc/rfc4627.txt .