CBOR
CBOR (Concise Binary Object Representation) est une forme binaire de JSON, normalisée dans le RFC 8949, plus compacte et prenant en charge davantage de types de données.
Objectif
Fournir un encodage binaire plus compact que JSON pour les scénarios contraints en bande passante et en stockage.
Mécanisme
Chaque élément de données commence par un octet d'étiquette : les 3 bits de poids fort donnent le type majeur (0-7) et les 5 bits de poids faible l'information additionnelle. Les types majeurs 0-2 sont les entiers non signés, entiers négatifs et chaînes d'octets ; 3 est une chaîne de texte ; 4-5 sont les tableaux et mappes ; 6 sont les étiquettes (marquage sémantique) ; 7 sont les floats et valeurs simples. Les étiquettes d'extension prennent en charge les dates, URL, bignums et plus.
Cas d’usage
- Protocole IoT CoAP
- Données d'identifiants WebAuthn
- IPLD (le modèle de données d'IPFS)
- Transport de données de capteurs
Exemples
- entrée
{"a":1}OutputA1 61 61 01CBOR encoding of a one-pair map
Erreurs courantes
- Confusing CBOR and MessagePack encoding details
- They differ; parse with each specification