Bandingkan
CBOR atau JSON
CBOR adalah format pertukaran biner dengan model data yang memperluas JSON, termasuk nilai seperti byte string dan tag. JSON adalah format teks yang mudah dibaca dan banyak dipakai API web serta alat konfigurasi.
Format mana yang sebaiknya dipilih?
Pilih JSON untuk teks yang diedit atau diperiksa orang dan kompatibilitas dengan API JSON yang ada. Pertimbangkan CBOR jika protokol memerlukan data biner ringkas, byte string, tipe tambahan, atau encoding deterministik.
Cocok untuk CBOR
Pertukaran data terstruktur pada perangkat dan jaringan dengan sumber daya terbatas · Representasi data dalam COSE dan protokol IoT
- Mewakili data mirip JSON dalam bentuk biner yang ringkas
- Menggunakan tag standar atau buatan aplikasi untuk menjelaskan arti nilai
Cocok untuk JSON
API web, file konfigurasi, dan pertukaran data
- Mengirim data terstruktur
Informasi dasar
| Item | CBOR | JSON |
|---|---|---|
| Ekstensi | .cbor | .json |
| Tipe MIME | application/cbor | application/json |
| Penggunaan umum | Pertukaran data terstruktur pada perangkat dan jaringan dengan sumber daya terbatas · Representasi data dalam COSE dan protokol IoT | API web, file konfigurasi, dan pertukaran data |
| Cara membuka | Baca dengan pustaka atau decoder CBOR, lalu periksa notasi diagnostik atau tampilan mirip JSON. Perhatikan cara nilai yang tidak memiliki padanan langsung di JSON, seperti tag dan byte string, ditampilkan. | Buka dalam editor teks, IDE, atau penampil yang mendukung JSON. |
| Ekspor atau konversi | Saat mengonversi ke JSON, byte string dan nilai bertag mungkin memerlukan representasi khusus alat karena JSON tidak memiliki tipe yang setara. Untuk tanda tangan, hash, atau kunci cache, ikuti aturan encoding yang disepakati protokol, seperti encoding deterministik RFC 8949. | Aplikasi atau alat konversi dapat mengubahnya ke format seperti CSV. |
Pilih menurut penggunaan
Mewakili data mirip JSON dalam bentuk biner yang ringkas
Pertukaran data terstruktur pada perangkat dan jaringan dengan sumber daya terbatas · Representasi data dalam COSE dan protokol IoT
CBORMenggunakan tag standar atau buatan aplikasi untuk menjelaskan arti nilai
Pertukaran data terstruktur pada perangkat dan jaringan dengan sumber daya terbatas · Representasi data dalam COSE dan protokol IoT
CBORMengirim data terstruktur
API web, file konfigurasi, dan pertukaran data
JSONPoin utama 1
JSON adalah teks berupa karakter; item CBOR adalah byte biner. CBOR mendukung integer, byte string, dan tag secara langsung, sedangkan JSON biasanya memerlukan konvensi seperti base64 untuk nilai biner.
Perbedaan lebih lanjutPoin utama 2
JSON RFC 8259 mendefinisikan objek, array, string, angka, boolean, dan null tanpa mewajibkan skema aplikasi. CBOR menambahkan nilai bertag dan memperluas model data JSON.
Perbedaan lebih lanjutPerbedaan lebih lanjut
Gunakan JSON untuk antarmuka teks yang mudah diperiksa dan dukungan alat luas. Gunakan CBOR untuk protokol biner yang memanfaatkan byte string, tag, atau encoding deterministik. Sepakati arti tag, rentang angka, kanonisasi, dan dukungan pustaka di kedua sisi.
- Notasi diagnostik CBOR untuk debugging; pertukaran sebenarnya memakai item biner. JSON bertukar teks.
- Konversi CBOR ke JSON dapat menghilangkan tag, pembedaan byte string, representasi integer, presisi angka, atau sifat encoding deterministik.
- Tentukan penanganan tag tak dikenal, integer besar, kunci map duplikat, dan nilai tanpa padanan JSON langsung; uji implementasi dengan payload nyata.
Pertanyaan umum
Apakah CBOR hanya JSON yang dikompresi?
Tidak. CBOR memiliki model biner sendiri dan mendukung byte string serta tag yang tidak direpresentasikan secara asli oleh JSON.