Kodek CBOR / MessagePack
Input JSON
Output Hex
Detail teknis
Cara Kerja Konverter CBOR & MessagePack
Apa yang Dilakukan Alat Ini
Alat ini mengenkode data JSON ke format biner CBOR (Concise Binary Object Representation) atau MessagePack, dan mendekode payload biner kembali menjadi JSON yang mudah dibaca manusia. Alat ini menampilkan byte heks mentah di samping struktur yang telah didekode, sehingga memudahkan inspeksi enkode biner ringkas yang digunakan di lingkungan dengan keterbatasan sumber daya. Kedua arah enkode mendukung objek bertingkat, array, dan tipe JSON standar.
Kasus Penggunaan Umum untuk Developer
Pengembang IoT menggunakan alat ini untuk memeriksa payload CBOR dari pesan CoAP atau token yang ditandatangani COSE tanpa menulis kode deserialisasi. Insinyur backend men-debug frame WebSocket yang dienkode MessagePack, buffer protokol Redis, atau payload RPC dengan menempelkan dump heks dan melihat JSON hasil dekode. Alat ini juga berguna untuk membandingkan ukuran payload antara JSON, CBOR, dan MessagePack guna memilih format wire yang paling efisien untuk sistem dengan keterbatasan bandwidth.
Format Data, Tipe, atau Varian
CBOR (RFC 8949) adalah format biner yang mendeskripsikan dirinya sendiri, dirancang untuk ukuran kode kecil dan ukuran pesan kecil, dan diadopsi luas dalam standar IoT seperti LwM2M dan FIDO2/WebAuthn. MessagePack adalah serialisasi biner serupa yang bertujuan sekompak mungkin sambil tetap tanpa skema, dan umum digunakan oleh Redis, Fluentd, serta banyak framework RPC. Kedua format lebih ringkas daripada JSON tetapi mengorbankan keterbacaan manusia demi efisiensi.
Kesalahan Umum dan Kasus Tepi
CBOR mendukung tipe data yang tidak dapat direpresentasikan JSON secara native, seperti byte string, tag, dan kontainer dengan panjang tak tentu — melakukan round-trip ini melalui JSON akan menghilangkan informasi tipe. MessagePack membedakan antara byte mentah dan string UTF-8, yang oleh JSON disatukan menjadi satu tipe string. Presisi bilangan bulat juga dapat berbeda: kedua format mendukung bilangan bulat dengan panjang arbitrer, tetapi mendekode ke JavaScript dapat kehilangan presisi di atas Number.MAX_SAFE_INTEGER.
Kapan Menggunakan Alat Ini vs Kode
Gunakan alat browser ini untuk inspeksi ad-hoc payload biner yang ditangkap dari lalu lintas jaringan, men-debug pesan perangkat IoT, atau membandingkan ukuran enkode dengan cepat. Untuk serialisasi produksi di kode aplikasi, gunakan pustaka khusus seperti cbor2 (Python), cbor-x (Node.js), atau msgpack untuk bahasa Anda, yang menangani streaming, validasi skema, dan pemetaan tipe yang tepat yang tidak dapat disediakan oleh alat browser.