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
| Voce | CBOR | MessagePack |
|---|---|---|
| Estensione | .cbor | .msgpack, .mpk |
| Tipo MIME | application/cbor | application/octet-stream |
| Usi comuni | Scambiare dati strutturati su dispositivi e reti con risorse limitate · Rappresentare dati in COSE e nei protocolli IoT | Serializzare dati simili a JSON in binario · Scambiare dati strutturati tra applicazioni compatibili |
| Come aprire | Leggilo 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 convertire | Nella 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
CBORUsare 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
CBORCodificare in binario array, mappe e valori di base in stile JSON
Serializzare dati simili a JSON in binario · Scambiare dati strutturati tra applicazioni compatibili
MessagePackScambiare valori estesi e timestamp tra librerie compatibili
Serializzare dati simili a JSON in binario · Scambiare dati strutturati tra applicazioni compatibili
MessagePackPunto 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 differenzePunto 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 differenzeApprofondisci 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.