Saya menulis layanan web yang menggunakan json untuk mewakili sumber dayanya, dan saya agak terjebak memikirkan cara terbaik untuk menyandikan json. Membaca json rfc ( http://www.ietf.org/rfc/rfc4627.txt ) jelas bahwa pengkodean yang disukai adalah utf-8. Tetapi rfc juga menjelaskan mekanisme pelolosan string untuk menentukan karakter. Saya berasumsi ini umumnya akan digunakan untuk melarikan diri karakter non-ascii, sehingga membuat ascii yang valid utf-8.
Jadi katakanlah saya memiliki string json yang berisi karakter unicode (kode-poin) yang non-ascii. Haruskah webservice saya hanya mengkodekan utf-8 dan mengembalikannya, atau haruskah ia keluar dari semua karakter non-ascii dan mengembalikan ascii murni?
Saya ingin browser dapat menjalankan hasil menggunakan jsonp atau eval. Apakah itu mempengaruhi keputusan? Pengetahuan saya tentang berbagai dukungan javascript browser untuk utf-8 masih kurang.
EDIT: Saya ingin mengklarifikasi bahwa perhatian utama saya tentang cara menyandikan hasil sebenarnya tentang penanganan hasil di browser. Apa yang saya baca menunjukkan bahwa browser mungkin sensitif terhadap pengkodean khususnya saat menggunakan JSONP. Saya belum menemukan info yang benar-benar bagus tentang masalah ini, jadi saya harus mulai melakukan beberapa pengujian untuk melihat apa yang terjadi. Idealnya saya hanya ingin menghindari beberapa karakter yang diperlukan dan hanya menyandikan hasil utf-8.