Validador e Formatador JSON
Valida, formata e minifica JSON no teu navegador com localizações de erro detalhadas.
A carregar Validador e Formatador JSON… Se nada acontecer, ativa o JavaScript.
JSON (JavaScript Object Notation) é um formato de intercâmbio de dados leve e legível por humanos, baseado num subconjunto da sintaxe de JavaScript. Foi popularizado por Douglas Crockford no início dos anos 2000 como uma alternativa mais simples ao XML para trocar dados entre clientes e servidores web. Normalizado como RFC 4627 em 2006 e mais tarde como ECMA-404 e RFC 8259, o JSON tornou-se a língua universal das API web, dos ficheiros de configuração e do armazenamento de dados. Os seus seis tipos de valor (cadeia, número, booleano, null, array e objeto) correspondem de forma limpa às estruturas de dados de praticamente todas as linguagens de programação.
Exemplos
{"name":"Ada","age":36}
Valid · object with 2 keys
{'name': 'Ada'}
Invalid · property names must use double quotes
O JSON é mais estrito do que um literal de objeto de JavaScript: sem plicas, sem vírgulas finais.
Perguntas frequentes
O meu JSON é enviado para um servidor?
Quais são as regras exatas que tornam um JSON válido?
Qual é a diferença entre formatar e minificar JSON?
Em que difere o JSON da sintaxe de literal de objeto de JavaScript?
Que tamanho de JSON posso validar e formatar?
O validador suporta JSON5 ou JSONC (JSON com comentários)?
Posso usar isto para formatar JSON dentro de uma cadeia (JSON com escape)?
JSON é o mesmo que BSON ou MessagePack?
Porque é que a mensagem de erro só mostra o primeiro erro?
Qual é um erro comum que invalida o JSON?
Sobre Validador e Formatador JSON
O JSON é incontornável no desenvolvimento moderno. As API REST devolvem respostas JSON. Os ficheiros de configuração de ferramentas como ESLint, TypeScript e npm usam JSON. As bases de dados NoSQL como o MongoDB guardam documentos como BSON (JSON binário). As cargas úteis de eventos de funções serverless são objetos JSON. Os programadores precisam regularmente de inspecionar, formatar ou validar JSON vindo de respostas de API, exportações de bases de dados, ficheiros de registo, cargas de webhooks e modelos de configuração. Uma única vírgula mal colocada ou um parêntese sem par invalida todo o documento, e o JSON minificado em bruto de uma API de produção é quase impossível de ler sem formatação.
Este validador e formatador de JSON analisa a tua entrada localmente no navegador usando a função nativa JSON.parse, o mesmo analisador que cada ambiente de execução de JavaScript usa. Realça a linha e a coluna exatas de qualquer erro de sintaxe para que possas encontrar e corrigir os problemas de imediato. Uma vez válido, a ferramenta imprime o JSON com indentação configurável para melhorar a legibilidade, ou minifica-o removendo todo o espaço em branco desnecessário para reduzir o tamanho da carga. Como tudo corre no teu navegador, os teus dados JSON, que podem conter chaves de API, registos de utilizadores ou dados comerciais confidenciais, nunca são enviados para nenhum servidor.
Os erros comuns de JSON incluem vírgulas finais depois do último elemento de um array ou objeto (válidas em JavaScript mas proibidas em JSON), cadeias entre plicas (o JSON exige aspas duplas) e comentários (o JSON não tem sintaxe de comentários, ao contrário do JSONC ou JSON5). Números com zeros à esquerda (como 007) também são inválidos. Se trabalhas com um formato que estende o JSON com estas funcionalidades, precisas de um analisador JSONC ou JSON5; o JSON.parse padrão rejeita-os.
Como o JSON conquistou a web
O JSON foi criado e popularizado por Douglas Crockford, que registou o domínio json.org em 2001 e começou a defender o JSON como uma alternativa leve ao XML para troca de dados com AJAX. A ideia-chave de Crockford foi que a sintaxe de literais de objeto e array do JavaScript já era um formato de dados válido; só precisava de ser documentada, restringida a tipos seguros e promovida. Afirmou de forma célebre que «descobriu» o JSON em vez de o inventar, notando que a sintaxe já estava latente no próprio JavaScript.
Apesar da sua simplicidade, o caminho do JSON para a normalização foi surpreendentemente polémico. Crockford publicou-o inicialmente sob uma licença que incluía a frase «O software será usado para o Bem, não para o Mal», o que levou algumas organizações de código aberto a classificá-lo como não livre. Quando a ECMA formalizou o JSON como ECMA-404 em 2013 e o IETF publicou o RFC 8259 em 2017, usaram uma licença limpa, mas Crockford manteve a cláusula «o Bem, não o Mal» na especificação original de json.org, criando uma nota de rodapé persistente (e algo humorística) sobre licenciamento na história dos padrões web.
Hoje, o JSON é talvez o formato de dados mais analisado que existe. Todas as principais linguagens de programação incluem um analisador JSON na sua biblioteca padrão. As API REST, as respostas GraphQL, as bases de dados NoSQL, os ficheiros de configuração, os sistemas de agregação de registos e os barramentos de eventos serverless usam o JSON como formato nativo. A ironia é que o JSON, concebido para ser mais simples do que o XML, se tornou tão omnipresente que à sua volta cresceram ecossistemas inteiros de formatos próximos do JSON (JSON5, JSONC, NDJSON, JSON Schema, JSON Pointer, JSON Patch) para colmatar as suas limitações.