Lição 6

JSON em APIs e configs

Payloads REST, arquivos de config e JSON vs XML e YAML.

Entender JSON no contexto ajuda a escolher formatos com critério e a ler documentação com mais eficiência.

APIs REST

APIs HTTP costumam usar JSON em bodies e, às vezes, em payloads POST sem query string:

POST /users HTTP/1.1
Content-Type: application/json

{"name": "Ada", "role": "admin"}

Respostas seguem o mesmo formato. Status codes ficam nos headers HTTP; o JSON carrega os dados de negócio. Schemas podem ser documentados com OpenAPI, JSON Schema ou exemplos em prosa.

Arquivos de configuração

Ferramentas como package.json, tsconfig.json e muitos configs de CI são JSON. Benefícios:

  • Fácil de parsear por programas
  • Amplo suporte em editores
  • Diff amigável no controle de versão quando formatado

Trade-off: sem comentários em JSON estrito (algumas ferramentas aceitam JSONC — um superset com comentários — mas configs portáveis seguem JSON padrão).

JSON vs XML

JSONXML
VerbosidadeEm geral mais curtoMuitas vezes mais tags
TiposMínimos (string, number, …)Atributos + nós de texto
SchemaJSON Schema, OpenAPIXSD, DTD
Uso típico hojeWeb APIsEnterprise legado, documentos

JSON vs YAML

YAML é amigável para configs e suporta comentários. É comum em Kubernetes e Docker Compose. Armadilhas: sensível a indentação, mais difícil de parsear com segurança em escala. JSON é mais estrito e mais seguro para input não confiável; YAML costuma ser escolhido quando humanos editam configs grandes manualmente.

Nota de segurança

Nunca use eval() em texto JSON — faça parse com uma biblioteca dedicada. Para payloads não confiáveis, valide contra um schema e limite o tamanho para reduzir risco de negação de serviço.

Resumo do curso

Você agora tem base em sintaxe JSON, tipos, estrutura, erros comuns e uso no mundo real. Aplique isso ao ler docs de API, desenhar payloads ou revisar mudanças de config em pull requests.

Voltar à visão geral do curso