Format Atlas

Confronta

CBOR o MessagePack

CBOR e MessagePack serializzano in binario valori simili a JSON. CBOR standardizza tag di protocollo e regole di codifica deterministica; MessagePack offre una codifica compatta per oggetti generici.

Quale formato scegliere?

Valuta CBOR se un protocollo richiede tag standardizzati IETF o codifica deterministica. Scegli MessagePack quando conta la compatibilità con applicazioni e librerie esistenti. Prova intervalli numerici, estensioni, normalizzazione e comportamento tra implementazioni.

Adatto per CBOR

Scambiare dati strutturati su dispositivi e reti con risorse limitate · Rappresentare dati in COSE e nei protocolli IoT

  • Rappresentare dati simili a JSON in forma binaria compatta
  • Usare tag standard o definiti dall’applicazione per indicare il significato dei valori

Adatto per MessagePack

Serializzare dati simili a JSON in binario · Scambiare dati strutturati tra applicazioni compatibili

  • Codificare in binario array, mappe e valori di base in stile JSON
  • Scambiare valori estesi e timestamp tra librerie compatibili

Informazioni di base

VoceCBORMessagePack
Estensione.cbor.msgpack, .mpk
Tipo MIMEapplication/cborapplication/octet-stream
Usi comuniScambiare dati strutturati su dispositivi e reti con risorse limitate · Rappresentare dati in COSE e nei protocolli IoTSerializzare dati simili a JSON in binario · Scambiare dati strutturati tra applicazioni compatibili
Come aprireLeggilo con una libreria o un decoder CBOR e controlla la notazione diagnostica o una vista simile a JSON. Verifica la rappresentazione dei valori senza equivalente diretto in JSON, come tag e sequenze di byte.Leggilo con una libreria o un decoder compatibile con MessagePack. Per esaminarlo, usa la notazione diagnostica o una vista simile a JSON e verifica come vengono mostrati dati binari ed estensioni.
Esportare o convertireNella conversione in JSON, sequenze di byte e valori con tag possono richiedere rappresentazioni specifiche dello strumento. Per firme, hash o chiavi di cache, segui le regole concordate dal protocollo, come la codifica deterministica di RFC 8949.Convertendo in JSON, dati binari ed estensioni possono richiedere array, stringhe o contenitori specifici dello strumento, perché JSON standard non ha tipi equivalenti. Per un percorso di andata e ritorno, prova tipi, intervalli numerici, timestamp, chiavi delle mappe ed estensioni con dati reali.

Scegli in base all'uso

Rappresentare dati simili a JSON in forma binaria compatta

Scambiare dati strutturati su dispositivi e reti con risorse limitate · Rappresentare dati in COSE e nei protocolli IoT

CBOR

Usare tag standard o definiti dall’applicazione per indicare il significato dei valori

Scambiare dati strutturati su dispositivi e reti con risorse limitate · Rappresentare dati in COSE e nei protocolli IoT

CBOR

Codificare in binario array, mappe e valori di base in stile JSON

Serializzare dati simili a JSON in binario · Scambiare dati strutturati tra applicazioni compatibili

MessagePack

Scambiare valori estesi e timestamp tra librerie compatibili

Serializzare dati simili a JSON in binario · Scambiare dati strutturati tra applicazioni compatibili

MessagePack

Punto chiave 1

CBOR definisce interi, byte string, array, map e tag nella RFC 8949. MessagePack definisce interi, stringhe, binario, array, map e tipi di estensione definiti dall’applicazione.

Approfondisci le differenze

Punto chiave 2

CBOR specifica requisiti di codifica deterministica utili per firme o hash coerenti. Le applicazioni MessagePack potrebbero dover definire l’ordinamento delle chiavi e le convenzioni delle estensioni.

Approfondisci le differenze

Approfondisci le differenze

Scegli in base al protocollo e all’ecosistema, senza presumere che uno sia sempre più piccolo o veloce. Definisci la mappatura di tag, estensioni, chiavi, numeri e valori opzionali, poi prova dati reali.

  • I tag CBOR identificano la semantica dei valori e la RFC 8949 descrive requisiti di codifica deterministica. Le estensioni MessagePack contengono identificatori di tipo e byte definiti dall’applicazione.
  • Anche quando rappresentano dati simili, i formati binari sono diversi. Un decoder di uno non è automaticamente in grado di leggere l’altro.
  • La conversione può cambiare larghezze numeriche, tipi di chiave, tag o valori di estensione. Definisci le corrispondenze e prova conversioni di andata e ritorno.

Domande frequenti

CBOR e MessagePack sono compatibili a livello binario?

No. Codifiche e modelli di estensione differiscono; servono una conversione esplicita o una definizione di protocollo condivisa.

Scopri di più

Riferimenti e specifiche