Lección 6
JSON en APIs y configuración
Payloads REST, archivos de config y JSON frente a XML y YAML.
Comprender JSON en contexto te ayuda a elegir formatos con criterio y a leer documentación con más eficacia.
APIs REST
Las APIs HTTP suelen usar JSON para cuerpos y a veces payloads POST sin query string:
POST /users HTTP/1.1
Content-Type: application/json
{"name": "Ada", "role": "admin"}
Las respuestas siguen el mismo formato. Los códigos de estado van en cabeceras HTTP; JSON transporta los datos de negocio. Los esquemas pueden documentarse con OpenAPI, JSON Schema o ejemplos en prosa.
Archivos de configuración
Herramientas como package.json, tsconfig.json y muchas configs de CI son JSON. Ventajas:
- Fácil de parsear para programas
- Amplio soporte en editores
- Amigable con diffs en control de versiones cuando está formateado
Compromiso: sin comentarios en JSON estricto (algunas herramientas aceptan JSONC — un superconjunto con comentarios —, pero las configs portables se mantienen en JSON estándar).
JSON frente a XML
| JSON | XML | |
|---|---|---|
| Verbosidad | Suele ser más corto | A menudo más etiquetas |
| Tipos | Mínimos (string, number, …) | Atributos + nodos de texto |
| Esquema | JSON Schema, OpenAPI | XSD, DTD |
| Uso típico hoy | APIs web | Enterprise legacy, documentos |
JSON frente a YAML
YAML es amigable para configs y admite comentarios. Es habitual en Kubernetes y Docker Compose. Trampas: sensible a la indentación, más difícil de parsear de forma segura a escala. JSON es más estricto y seguro para entrada no confiable; YAML suele elegirse cuando humanos editan configs grandes a mano.
Nota de seguridad
Nunca uses eval() con texto JSON — parsea con una biblioteca dedicada. Para payloads no confiables, valida contra un esquema y limita el tamaño para reducir el riesgo de denegación de servicio.
Resumen del curso
Ya tienes una base en sintaxis JSON, tipos, estructura, errores comunes y uso en el mundo real. Aplícalo al leer docs de API, diseñar payloads o revisar cambios de config en pull requests.