Voltar ao blog

Como formatar e validar JSON

Para formatar JSON, cole-o em um formatador que adiciona indentação e quebras de linha para que a estrutura fique fácil de ler; para validá-lo, passe-o por um parser que verifica a sintaxe e aponta o ponto exato onde ele quebra. Formatar (também chamado de embelezar ou “pretty-print”) e validar geralmente andam juntos: uma boa ferramenta reindenta JSON válido e, quando a entrada está quebrada, diz precisamente o que está errado. Abaixo está o que cada ação realmente faz, quando formatar em vez de minificar e como ler e corrigir os erros que um parser lança.

Formatar, minificar, validar: três trabalhos diferentes

Essas três palavras são usadas de forma intercambiável, mas fazem coisas distintas com seus dados.

  • Formatar (embelezar) adiciona indentação e quebras de linha para que objetos e arrays aninhados se alinhem visualmente. Isso não muda os dados — só os espaços em branco — tornando muito mais fácil examinar um arquivo de configuração ou a resposta de uma API a olho nu.
  • Minificar faz o oposto: remove todo espaço, tabulação e quebra de linha não essencial para que o payload fique o menor possível. Os dados são idênticos, apenas compactados em praticamente uma única linha.
  • Validar verifica se o texto é, de fato, JSON válido. Um validador analisa a entrada e ou confirma que ela está bem formada ou relata o primeiro erro de sintaxe que encontra.

Na prática, você formata enquanto está lendo e depurando, e minifica logo antes de enviar dados pela rede ou armazená-los. A validação sustenta as duas ações — você não consegue formatar nem minificar com segurança um texto que não seja JSON válido em primeiro lugar.

Quando formatar vs minificar

Recorra à formatação sempre que um ser humano precisar olhar para os dados:

  • Inspecionar a resposta de uma API durante a depuração.
  • Revisar ou editar um package.json, tsconfig.json ou qualquer arquivo de configuração.
  • Comparar (diff) dois arquivos JSON no controle de versão, onde uma indentação consistente mantém o diff pequeno e significativo.
  • Colar um bloco denso de uma única linha vindo de um log e querer realmente entender o seu formato.

Recorra à minificação quando os bytes importam e nenhum humano está lendo:

  • Enviar JSON no corpo de uma resposta ou requisição HTTP, onde payloads menores significam transferências mais rápidas.
  • Embutir configuração em uma variável de ambiente ou em uma URL.
  • Armazenar muitos registros, onde os espaços em branco se acumulam ao longo de milhares de linhas.

Um hábito útil: mantenha seus arquivos-fonte formatados para legibilidade e deixe seu build ou servidor minificar na saída. Você fica com o melhor dos dois mundos — legível no repositório, compacto na rede.

Os erros de JSON mais comuns (e como corrigi-los)

O JSON é deliberadamente rígido, e é isso que o torna portátil entre todas as linguagens. Essa mesma rigidez confunde as pessoas, especialmente quem está acostumado a escrever objetos literais em JavaScript. Estes são os erros que aparecem sem parar:

  • Vírgulas sobrando (trailing commas). Uma vírgula depois do último item de um objeto ou array — {"a": 1,} — é inválida. Remova-a. Este é o erro mais comum de todos, porque a maioria das linguagens de programação o permite.
  • Aspas simples em vez de aspas duplas. O JSON exige aspas duplas tanto para chaves quanto para valores de texto. {'name': 'Ada'} precisa virar {"name": "Ada"}.
  • Chaves sem aspas. As chaves são sempre strings entre aspas. {name: "Ada"} é um objeto JavaScript, não JSON; precisa ser {"name": "Ada"}.
  • Vírgulas faltando. Todo item, exceto o último, precisa de uma vírgula separando-o do próximo. Dois valores em sequência sem nada entre eles vão falhar no parse.
  • Comentários. O JSON não tem sintaxe de comentário. Linhas que começam com // ou que estão entre /* */ não são permitidas e precisam ser removidas antes que o texto seja validado.

Mais algumas coisas para ficar de olho: números não podem ter zeros à esquerda nem um ponto decimal no final, strings precisam escapar caracteres especiais como \n e \", e os únicos literais permitidos além de números e strings são true, false e null (em minúsculas, sem aspas).

Como ler um erro de parse

Quando a validação falha, o parser geralmente relata uma posição — uma linha e coluna, ou um deslocamento de caractere (offset). Leia essa localização ao pé da letra: o erro é relatado no primeiro caractere que o parser não conseguiu entender, que muitas vezes está logo depois do erro real. Por exemplo, uma vírgula faltando é frequentemente sinalizada no início da próxima chave, não no espaço onde a vírgula deveria estar. Vá até o ponto indicado e depois olhe o token imediatamente anterior a ele. Assim que você corrigir o primeiro erro, valide de novo, porque um parser para no primeiro problema e pode haver mais atrás dele.

Faça isso com privacidade no seu navegador

Muitas ferramentas de JSON online enviam tudo o que você cola para um servidor remoto fazer o processamento. Com JSON, esses costumam ser os piores dados possíveis para enviar, porque é exatamente onde chaves de API, tokens de acesso, nomes de host internos, registros de clientes e outros segredos tendem a viver.

O Formatador de JSON da Andev evita isso por completo. Ele usa o JSON.parse e o JSON.stringify nativos do próprio navegador, o que significa:

  • Seus dados nunca são enviados. Tudo roda localmente no seu dispositivo; nada é mandado para lugar nenhum.
  • Ele revela o erro de parse exato. Quando a entrada é inválida, você vê a mensagem e a localização específicas para ir direto ao problema.
  • Você escolhe o tamanho da indentação. Formate com dois espaços, quatro espaços ou tabulações para combinar com o estilo do seu projeto — ou minifique para uma única linha.
  • É instantâneo. Sem ida e volta de enviar e esperar; o resultado aparece tão rápido quanto você cola.

Como ele se apoia no mesmo motor de JSON que suas aplicações já usam, a validação que ele relata corresponde a como seu código vai realmente se comportar ao analisar a mesma string. Isso o torna seguro para usar com configurações sensíveis e payloads de API, e confiável como uma checagem rápida de sanidade antes de você publicar.

Para tarefas vizinhas, a mesma abordagem local, sem upload, alimenta o codificador e decodificador Base64 da Andev e o seu codificador e decodificador de URL — ambos úteis quando o JSON está sendo embutido em um data URI, um token ou uma query string.

Principais conclusões

  • Formatar adiciona indentação para legibilidade; minificar remove espaços em branco para payloads menores; validar verifica a sintaxe. São três trabalhos separados.
  • Formate para humanos, minifique para a rede — mantenha os arquivos-fonte legíveis e deixe seu build compactar a saída.
  • A maioria dos erros são armadilhas de rigidez: vírgulas sobrando, aspas simples, chaves sem aspas, vírgulas faltando e comentários são todos JSON inválido.
  • Leia os erros de parse na posição relatada, e depois verifique o token logo antes dele; corrija um erro e valide de novo, já que o parser para no primeiro.
  • Mantenha tudo local. Um formatador nativo do navegador nunca envia seus dados, o que importa ainda mais para os segredos que vivem dentro de JSON de configuração e de API.

Precisa limpar ou checar um JSON agora mesmo? Abra o Formatador de JSON gratuito e privado — sem uploads, sem cadastro — ou explore o conjunto completo de ferramentas para desenvolvedores que rodam no navegador.