DevToys Web Pro iconDevToys Web ProBlog
Valóranos:
Prueba la extensión del navegador:

Códec CBOR / MessagePack

Formato:
Dirección:
Salida:

Entrada JSON

  • Salida hex

  • Detalles técnicos

    Cómo funciona el convertidor de CBOR y MessagePack

    Qué hace la herramienta

    Esta herramienta codifica datos JSON en formatos binarios CBOR (Concise Binary Object Representation) o MessagePack, y decodifica cargas binarias de vuelta a JSON legible por humanos. Muestra los bytes hexadecimales sin procesar junto con la estructura decodificada, lo que facilita inspeccionar codificaciones binarias compactas usadas en entornos con recursos limitados. Ambas direcciones de codificación admiten objetos anidados, matrices y tipos JSON estándar.

    Casos de uso comunes para desarrolladores

    Los desarrolladores de IoT usan esta herramienta para inspeccionar cargas CBOR de mensajes CoAP o tokens firmados con COSE sin escribir código de deserialización. Los ingenieros de backend depuran tramas WebSocket codificadas en MessagePack, búferes de protocolo de Redis o cargas RPC pegando volcados hexadecimales y viendo el JSON decodificado. También es útil para comparar tamaños de carga entre JSON, CBOR y MessagePack y elegir el formato de transporte más eficiente para sistemas con ancho de banda limitado.

    Formatos de datos, tipos o variantes

    CBOR (RFC 8949) es un formato binario autodescriptivo diseñado para un tamaño de código reducido y un tamaño de mensaje pequeño, ampliamente adoptado en estándares de IoT como LwM2M y FIDO2/WebAuthn. MessagePack es una serialización binaria similar que busca ser lo más compacta posible manteniéndose sin esquema, comúnmente usada por Redis, Fluentd y muchos frameworks de RPC. Ambos formatos son más compactos que JSON, pero sacrifican la legibilidad humana por eficiencia.

    Errores comunes y casos límite

    CBOR admite tipos de datos que JSON no puede representar de forma nativa, como cadenas de bytes, etiquetas y contenedores de longitud indefinida; al hacer round-trip de estos a través de JSON se perderá información de tipo. MessagePack distingue entre bytes sin procesar y cadenas UTF-8, que JSON reduce a un único tipo de cadena. La precisión de los enteros puede diferir: ambos formatos admiten enteros de longitud arbitraria, pero al decodificar en JavaScript puede perderse precisión más allá de Number.MAX_SAFE_INTEGER.

    Cuándo usar esta herramienta vs código

    Usa esta herramienta del navegador para inspección ad-hoc de cargas binarias capturadas del tráfico de red, depurar mensajes de dispositivos IoT o comparar rápidamente tamaños de codificación. Para serialización en producción en el código de la aplicación, usa bibliotecas dedicadas como cbor2 (Python), cbor-x (Node.js) o msgpack para tu lenguaje, que gestionan streaming, validación de esquemas y un mapeo de tipos adecuado que una herramienta de navegador no puede ofrecer.