CBOR / MessagePack-kodek
JSON-inndata
Hex-utdata
Tekniske detaljer
Hvordan CBOR- og MessagePack-konverteren fungerer
Hva verktøyet gjør
Dette verktøyet koder JSON-data til CBOR (Concise Binary Object Representation) eller MessagePack-binærformater, og dekoder binære nyttelaster tilbake til lesbar JSON. Det viser de rå heksadesimale bytene ved siden av den dekodede strukturen, noe som gjør det enkelt å inspisere kompakte binærkodinger brukt i ressursbegrensede miljøer. Begge kodingsretninger støtter nestede objekter, arrayer og standard JSON-typer.
Vanlige bruksområder for utviklere
IoT-utviklere bruker dette verktøyet til å inspisere CBOR-nyttelaster fra CoAP-meldinger eller COSE-signerte tokens uten å skrive deserialiseringskode. Backend-ingeniører feilsøker MessagePack-kodede WebSocket-rammer, Redis-protokollbuffere eller RPC-nyttelaster ved å lime inn heks-dumper og se den dekodede JSON-en. Det er også nyttig for å sammenligne nyttelaststørrelser mellom JSON, CBOR og MessagePack for å velge det mest effektive overføringsformatet for båndbreddebegrensede systemer.
Dataformater, typer eller varianter
CBOR (RFC 8949) er et selvbeskrivende binærformat designet for liten kodestørrelse og liten meldingsstørrelse, og er bredt tatt i bruk i IoT-standarder som LwM2M og FIDO2/WebAuthn. MessagePack er en lignende binær serialisering som har som mål å være så kompakt som mulig samtidig som den forblir skjemafri, og brukes ofte av Redis, Fluentd og mange RPC-rammeverk. Begge formatene er mer kompakte enn JSON, men ofrer lesbarhet for effektivitet.
Vanlige fallgruver og kanttilfeller
CBOR støtter datatyper som JSON ikke kan representere direkte, som byte-strenger, tagger og beholdere med ubestemt lengde — å runde disse gjennom JSON vil føre til tap av typeinformasjon. MessagePack skiller mellom rå bytes og UTF-8-strenger, noe JSON slår sammen til én enkelt strengtype. Heltallspresisjon kan variere: begge formatene støtter heltall med vilkårlig lengde, men dekoding til JavaScript kan miste presisjon utover Number.MAX_SAFE_INTEGER.
Når du bør bruke dette verktøyet vs. kode
Bruk dette nettleserverktøyet for ad hoc-inspeksjon av binære nyttelaster fanget fra nettverkstrafikk, feilsøking av IoT-enhetsmeldinger eller rask sammenligning av kodingsstørrelser. For produksjonsserialisering i applikasjonskode, bruk dedikerte biblioteker som cbor2 (Python), cbor-x (Node.js) eller msgpack for språket ditt, som håndterer strømming, skjemavalidering og korrekt typetilordning som et nettleserverktøy ikke kan tilby.