Saltar al contenido

Inicio · Blog · JSON: qué es, cómo abrirlo y dónde se usa

Enviar solicitud

Formato nuevo

JSON: qué es, cómo abrirlo y dónde se usa

JSON (JavaScript Object Notation) es un formato de texto para intercambiar datos estructurados entre programas e idiomas. Nació en el mundo JavaScript, pero no depende de JS: Python, PHP, Go, apps móviles y APIs lo leen.

Abajo: por qué JSON aparece en sitios, cómo funciona la sintaxis, cómo abrir un archivo y por qué nunca debes meter una respuesta ajena en `eval`. Listas de IE antiguo y editores obsoletos se saltan como ruido.

Compartir
Telegram

Dónde se usa JSON

Clásico web: el navegador pide datos al servidor (Ajax / `fetch`), recibe JSON y actualiza la página sin recarga completa — feed, catálogo, carrito, dashboard.

También: respuestas REST/GraphQL, configs de front, almacenamiento local de settings e intercambio entre microservicios y un cliente móvil.

Escenarios típicos:

  • APIs de sitio y app móvil
  • cargar bloques sin recarga completa
  • exports e integraciones
  • configs de herramientas de desarrollo

Cabeceras HTTP

Sintaxis: objetos y arrays

Dos bloques: objeto `{ "key": value }` y array `[ value1, value2 ]`. Las claves del objeto son strings entre comillas. Valores: string, número, `true`/`false`, `null`, objeto o array anidado.

Guarda teléfonos y ceros a la izquierda como strings: `"84959000000"`, no números — o pierdes el formato. El JSON estricto no permite coma final tras el último elemento.

Espacios y saltos de línea ayudan a humanos; por el cable a menudo se envía una línea compacta — el mismo significado.

Errores frecuentes de principiante:

  • comillas simples en lugar de dobles
  • una coma tras el último campo
  • comentarios `//` en JSON estricto
  • números donde hace falta string (teléfono, SKU)

Ajax, APIs y seguridad

El cliente pide una URL; el servidor responde con un body JSON y una cabecera como `Content-Type: application/json`. En JS moderno, `fetch` + `response.json()` basta — sin `eval`.

Los workarounds históricos de same-origin (JSONP, inyectar `<script>`) ampliaron la superficie de ataque. En proyectos nuevos usa CORS y JSON plano sobre HTTPS.

Nunca ejecutes JSON ajeno como código. Parsea con un parser nativo y valida campos en el servidor si los datos van a una DB o afectan permisos.

Reglas de seguridad:

  • solo `JSON.parse` / el equivalente del lenguaje
  • no confíes en campos del cliente sin checks
  • HTTPS para respuestas sensibles
  • no metas secretos en JSON público del front

Seguridad del sitio

Cómo abrir y editar .json

El archivo es texto UTF-8 plano. Basta VS Code, Cursor, Notepad++, Sublime o un editor de sistema. Los IDEs resaltan brackets y marcan errores de sintaxis.

No hacen falta herramientas todo-en-uno pesadas como viejos editores XML. Para un check rápido, usa el formatter del editor y validadores online — no pegues ahí secretos de producción.

Mínimo práctico:

  • un editor con resaltado JSON
  • pretty-print para leer
  • validación antes de enviar un feed o config
  • diff en git, no ediciones a ciegas en el servidor

Archivo YML para Market

FAQ

¿JSON es un lenguaje de programación?

No. Es un formato de datos: objetos, arrays, strings, números, booleanos, null. No escribes programas en él — intercambias datos con él.

¿En qué se diferencia de XML?

Suele ser más compacto y simple para JS/APIs. XML es más fuerte con schemas y markup mixto. Para APIs web hoy, JSON es más habitual.

¿Cómo abro un archivo .json?

Cualquier editor de texto o IDE con resaltado. En el navegador — una extensión/visor o pegarlo en un validador online. Para trabajo de producción, preferir un editor con formatter.

¿Puedo parsear JSON con eval?

No en proyectos reales. Usa `JSON.parse` o los parsers nativos del lenguaje. `eval` ejecuta código y abre riesgo XSS/inyección.

¿Qué es JSON5?

Una extensión con comentarios y sintaxis más laxa. Cómoda en configs editadas a mano; para intercambio por API suele quedarse el JSON estricto.

¿Payloads de API que fallan por comas, comillas o parse con eval?

Fijamos sintaxis JSON estricta, rutas de parse seguras y configs limpias para front e integraciones.

Hablar del proyecto