Protocolos e serialização binária

Decodificador MessagePackEntenda os tipos por trás dos bytes

Cole hex, Base64 ou bytes decimais, ou abra um arquivo local. Alterne a direção para codificar JSON padrão.

Decodificador MessagePack

Entrada

Resultado

Bytes e arquivos são processados neste navegador; nada é enviado.

Opções

Cole bytes ou abra um arquivo.

Ao copiar um payload de cache ou de uma resposta de API, os bytes não mostram a estrutura por conta própria. O decodificador MessagePack abre um mapa de tipos antes de apresentar a prévia em JSON.

Uma conversão rápida de MessagePack para JSON pode arredondar um identificador de 64 bits ou confundir bin com texto. Aqui também dá para testar JSON para MessagePack com uma amostra comum.

Por que usar este decodificador MessagePack

O formato binário continua visível mesmo na prévia em JSON.

Árvore que preserva os tipos

O decodificador MessagePack separa strings, bytes bin, códigos ext e inteiros grandes exatos. Marcadores na prévia mostram onde o JSON não possui um tipo equivalente.

Um fluxo de bytes se divide em texto, bytes brutos, extensão e inteiro longo.

Deslocamento do primeiro byte extra

Se há dados depois do primeiro valor completo, o deslocamento inicial é apontado. Um payload truncado também recebe posição para facilitar a depuração de capturas e mensagens coladas.

Um objeto estruturado termina antes de outros bytes; um marcador âmbar assinala a fronteira.

Confira a representação antes de exportar

01

Escolha como os bytes chegaram

A representação hexadecimal (hex) é o padrão. Mude para Base64 ou bytes decimais antes de colar outro formato; uma sequência curta ambígua não é adivinhada. Arquivos locais são lidos como bytes brutos.

  • O exemplo traz bin, extensão desconhecida e inteiro grande para comparação.
02

Controle a execução

O processamento automático aguarda 350 ms após a edição. Ao desligá-lo, o botão aparece e Ctrl/Cmd+Enter também funciona. Mudar entrada ou formato bloqueia a exportação do resultado antigo.

  • Alternar entre árvore e JSON não interpreta os bytes novamente.
03

Verifique os tipos antes de salvar

A árvore mostra tipo, deslocamento e comprimento de cada nó. A prévia em JSON facilita a leitura; na codificação, você baixa os bytes reais de um .msgpack.

  • Um marcador de extensão não é uma instrução de recodificação.

Inspecione a estrutura e gere bytes reais

Mapas e listas aninhados

Abra chaves e índices na árvore. Cada nó exibe deslocamento e comprimento; resultados longos são mostrados em lotes de 100 linhas.

Binários e extensões preservados

bin continua em bytes hex. Uma ext desconhecida mantém código com sinal e payload completo; timestamps também exibem segundos e nanossegundos.

JSON para MessagePack e arquivo

Codifique JSON padrão, copie hex, Base64 ou bytes decimais e baixe um arquivo binário para testar em outra aplicação.

O que a conversão não pode inventar

Um valor completo por vez
O decodificador MessagePack não ignora bytes após o primeiro valor. Um fluxo com mensagens concatenadas gera erro no primeiro byte extra; separe as mensagens antes.
Extensão desconhecida fica opaca
Só o timestamp de tipo -1 tem significado genérico. Tipos definidos pelo aplicativo mostram código e payload, sem inventar UUID ou objeto de negócio.
Prévia JSON não é ida e volta sem perdas
JSON não possui bin, ext, chaves de mapa não textuais nem inteiro exato de 64 bits. Marcadores são para leitura; o codificador aceita apenas JSON normal.
Limites explícitos do navegador
A entrada vai até 1 MiB, a profundidade até 64 e a árvore até 10 mil nós. Ao exceder um limite, o processo falha em vez de exibir um trecho como resultado inteiro.

Dúvidas sobre o decodificador MessagePack

Posso converter dados binários brutos?

Sim. Cole hex, Base64 ou bytes decimais, ou abra um arquivo binário local. O arquivo é lido como bytes, sem conversão indevida para UTF-8.

O conversor armazena meus dados?

Não. O payload é processado no navegador. Os bytes selecionados não são enviados nem armazenados pelo serviço.

Qual a diferença entre codificar e decodificar?

Codificar transforma um valor JSON em bytes MessagePack; decodificar lê esses bytes e expõe a estrutura. A prévia JSON de tipos especiais não é um comando de codificação inversa.

Quais formatos de saída são suportados?

Na codificação, copie hex, Base64 ou bytes decimais e baixe um .msgpack real. Na decodificação, o download é uma prévia JSON marcada.

Qual é a diferença entre str e bin?

str contém texto UTF-8; bin pode conter qualquer byte. A árvore mantém os dois distintos para que dados binários não virem texto corrompido.

Ainda tem alguma dúvida?

Experimente o decodificador MessagePack

Carregue o exemplo para comparar árvore de tipos e prévia JSON; depois inspecione seu payload ou codifique JSON padrão com o decodificador MessagePack.

Processamento local no navegador.