O que é o JSON, a sua estrutura básica, erros de sintaxe comuns, e porque é que formatar o torna legível.
JSON (JavaScript Object Notation) é o formato que a maioria das APIs web usa para trocar dados estruturados — quando uma aplicação vai buscar um perfil, uma previsão do tempo ou uma lista de produtos, a resposta é muitas vezes JSON. Também é usado em ficheiros de configuração, por ser simples o suficiente para ser lido tanto por humanos como por programas.
O JSON é construído a partir de um pequeno conjunto de peças: objetos (chavetas {}, com pares chave-valor), arrays (parênteses retos [], com uma lista ordenada), strings (sempre entre aspas duplas), números, true/false e null. Um objeto pode ter este aspeto: {"nome": "Ana", "idade": 29, "ativo": true} — a chave é sempre uma string entre aspas, e o valor pode ser qualquer um dos outros tipos, incluindo um objeto ou array aninhado.
O JSON é mais rígido do que parece. Uma vírgula a mais depois do último item é inválida, as chaves têm de usar aspas duplas (nunca aspas simples, nem ficarem sem aspas), e o JSON não suporta comentários. Estas são as razões mais frequentes para um interpretador de JSON rejeitar dados que, à primeira vista, parecem corretos.
As APIs normalmente devolvem JSON sem espaços extra, para poupar largura de banda, o que produz uma única linha densa e ilegível para qualquer coisa além de um objeto pequeno. Formatar — acrescentar indentação e quebras de linha consistentes — não altera os dados em nada, só torna a estrutura visível para um humano.
Se não tiveres a certeza se um bloco de JSON é válido, a forma mais rápida de verificar é tentar interpretá-lo: se falhar, tens um erro de sintaxe para corrigir, e se funcionar, sabes que a estrutura está correta antes de confiares nela no teu código.