UltKit

Convertir YAML a JSON

Convierta configuraciones YAML, especificaciones OpenAPI y archivos de CI en JSON que cualquier parser, API o validador de esquemas puede leer. Suba archivos .yaml o .yml y descargue JSON con sangría.

Convertidor de datos

o suelte aquí archivos CSV, TSV, TXT … ·

Máx. 95 MB por archivo· Hasta 20 archivos· Se borran a los 30 minutos

Salida

Los archivos se procesan en nuestros servidores y se borran a los 30 minutos.

Cómo usar esta herramienta

  1. 1

    Suba los archivos YAML

    Añada archivos .yaml o .yml, hasta 20 a la vez y 95 MB cada uno. Conserve los nombres originales; los archivos JSON llevan el mismo nombre con otra extensión.

  2. 2

    Elija con sangría o compacto

    Formato legible está activado e indenta el JSON para leerlo y revisarlo en código. Desactívelo en Opciones avanzadas para obtener un archivo de una sola línea que pegar en el cuerpo de una solicitud.

  3. 3

    Convierta y use

    Pulse Convertir a JSON, descargue y entregue el archivo a la API, al validador o al script que lo necesitaba.

Por qué los desarrolladores convierten YAML a JSON

YAML está pensado para personas: sangría en lugar de llaves, comentarios y la mayoría de las cadenas sin comillas. Por eso es el formato de los manifiestos de Kubernetes, los flujos de trabajo de GitHub Actions, los archivos de Docker Compose y las especificaciones OpenAPI que los equipos editan a mano. JSON está pensado para programas. Todos los lenguajes incluyen un parser de JSON en su biblioteca estándar, los navegadores lo leen de forma nativa y la mayoría de las API HTTP no aceptan otra cosa.

Así que la conversión ocurre en la frontera. Un ingeniero de plataforma pasa un manifiesto por jq, que solo lee JSON. Un desarrollador de backend envía una especificación OpenAPI a un generador de código que quiere JSON. Un tester carga datos de prueba escritos en YAML en una suite de pruebas de JavaScript. En cada caso el YAML sigue siendo la fuente de verdad y el JSON es un artefacto de compilación. Para todo un directorio de feeds o exportaciones en lugar de configuraciones, XML a JSON trata del mismo modo ese formato de marcado más antiguo.

Cómo crecieron juntos YAML y JSON

Clark Evans propone YAML por primera vez
2001
YAML 1.2 hace de JSON un subconjunto de YAML
2009
RFC 8259, el estándar actual de JSON
2017
Se publica la revisión YAML 1.2.2
2021

Qué pasa en el JSON con las funciones exclusivas de YAML

Un ancla (&defaults) y sus alias (*defaults) permiten a YAML reutilizar un bloque. JSON no tiene referencias, así que cada alias se sustituye por una copia completa del bloque anclado.

  • El JSON puede ser bastante más largo que el YAML
  • Las claves de fusión (<<: *defaults) se expanden de la misma manera
Una configuración YAML pequeña como JSON con sangría
{
  "service": "facturacion",
  "replicas": 3,
  "ports": [8080, 9090],
  "env": {
    "LOG_LEVEL": "info",
    "REGION": "NO"
  }
}

Datos de los formatos YAML y JSON

YAML

YAML

YAML ("YAML Ain't Markup Language") es un formato de datos fácil de leer para las personas, publicado por primera vez en 2001. Usa sangría en lugar de corchetes, admite comentarios y es un superconjunto de JSON. Se usa mucho para la configuración de Docker Compose, Kubernetes, GitHub Actions y numerosas aplicaciones. Como depende de los espacios en blanco, un solo espacio mal colocado puede romperlo, y algunos valores, como "no" o las fechas, pueden interpretarse de forma inesperada.

Compresión
–
Transparencia
–
Animación
–
Presentado en
2001 · Clark Evans, Ingy döt Net, Oren Ben-Kiki
Convertidor de YAML

JSON

JavaScript Object Notation (JSON)

JSON es un formato de texto ligero para datos estructurados, popularizado por Douglas Crockford a principios de la década de 2000 y estandarizado como RFC 8259 y ECMA-404. Representa objetos, arreglos, cadenas, números, booleanos y null con una sintaxis sencilla y legible. Es el formato predeterminado para las API web, los archivos de configuración y el intercambio de datos entre aplicaciones en casi todos los lenguajes de programación. No incluye comentarios, fechas ni esquemas, y los archivos grandes y anidados son difíciles de leer sin un visor.

Compresión
–
Transparencia
–
Animación
–
Presentado en
2001 · Douglas Crockford
Convertidor de JSON

Se convierte YAML a JSON cuando una configuración o especificación escrita para personas tiene que alimentar a una máquina: una solicitud a una API, un validador de esquemas o una herramienta sin parser de YAML.

Preguntas frecuentes sobre convertir YAML a JSON

¿Por qué convertir YAML a JSON si guardan los mismos datos?

Porque muchas herramientas solo leen uno de los dos. Los lectores de JSON vienen con todos los lenguajes de programación y navegadores, mientras que YAML necesita una biblioteca adicional. Los cuerpos de solicitud de las API REST, los validadores de JSON Schema, jq y archivos como package.json o el manifest.json de una extensión de navegador esperan JSON.

¿Qué pasa con los comentarios del YAML al convertirlo a JSON?

Se eliminan. RFC 8259 no da a JSON ninguna sintaxis de comentarios, así que las líneas que empiezan con # no tienen dónde ir. Conserve el archivo YAML como fuente documentada y trate el JSON como una copia generada que puede regenerar en cualquier momento.

¿Por qué NO u off se convirtieron en false?

Los parsers que siguen YAML 1.1 leen yes, no, on y off como booleanos, así que un código de país como NO, de Noruega, puede convertirse en false. YAML 1.2 limita los booleanos a true y false, pero no todas las herramientas lo siguen. Ponga esos valores entre comillas en el YAML, como "NO", y seguirán siendo cadenas en el JSON.

¿Se puede convertir una plantilla de CloudFormation escrita en YAML?

AWS CloudFormation acepta ambos formatos, pero las etiquetas cortas como !Ref y !GetAtt solo existen en YAML. Las plantillas JSON las escriben como funciones completas, {"Ref": "MyBucket"} o {"Fn::GetAtt": [...]}. Reescriba las etiquetas cortas en la forma larga antes de convertir para que la plantilla JSON siga siendo válida.

¿Cómo se convierte en sentido inverso, de JSON a YAML?

Use JSON a YAML. Es la dirección habitual cuando una respuesta de API o un archivo generado debe convertirse en un archivo de configuración legible dentro de un repositorio.