tigtools

Convertisseur YAML en JSON

Collez du YAML (un manifeste Kubernetes, un fichier CI, une spécification OpenAPI ou une configuration) et obtenez instantanément du JSON formaté. Rien n'est envoyé.

Fonctionne dans votre navigateur Sans inscription

Indentation

Convertir JSON en YAML à la place

Mode d’emploi

  1. Collez du YAML dans le champ de saisie, ou essayez l'exemple.
  2. Choisissez une indentation de 2 ou 4 espaces.
  3. Copiez le JSON ou téléchargez-le sous forme de fichier .json.

Fonctionnement

Le YAML est analysé avec la bibliothèque open source yaml en utilisant le schéma de base YAML 1.2, celui attendu par les outils modernes : yes, no, on et off restent des chaînes, et seuls true et false sont des booléens. Les ancres (&name) et les alias (*name) sont développés et les clés de fusion << sont appliquées ; le nombre d'expansions d'alias est limité, de sorte que les documents délibérément explosifs sont rejetés au lieu de bloquer la page.

Un fichier contenant plusieurs documents séparés par --- devient un tableau JSON avec un élément par document. Les commentaires, les ancres et les tags n'ont pas d'équivalent JSON et sont supprimés ; l'ordre des clés est conservé. Les horodatages restent des chaînes. Les entiers de plus d'environ 15 chiffres perdent en précision, comme pour tout JSON traité en JavaScript.

Si le YAML est invalide, la première erreur est affichée avec sa ligne et sa colonne, par exemple une tabulation utilisée pour l'indentation ou un crochet fermant manquant. Pour l'opération inverse, utilisez JSON vers YAML ou le convertisseur bidirectionnel JSON ⇄ YAML.

Exemples

Fichier CI avec ancres

Une liste de tâches qui réutilise un bloc de valeurs par défaut avec <<: *defaults devient du JSON avec les valeurs par défaut copiées dans chaque tâche, pour voir exactement ce que chaque tâche reçoit.

Fichier Kubernetes multi-documents

Un fichier avec un Deployment et un Service séparés par --- devient un tableau JSON de deux objets, prêt pour kubectl ou jq.

Foire aux questions

Pourquoi yes reste-t-il une chaîne ?

YAML 1.2, utilisé ici et par la plupart des outils actuels, ne considère comme booléens que true et false. Les anciens analyseurs YAML 1.1 transformaient yes, no, on et off en booléens, ce qui causait de nombreux bugs.

Que deviennent les commentaires ?

JSON ne contient pas de commentaires, ils sont donc supprimés. Les données elles-mêmes ne sont pas modifiées.

Y a-t-il une limite de taille ?

Uniquement la mémoire de votre navigateur. Les fichiers volumineux sont convertis après une courte pause pendant la saisie, afin que la page reste réactive.

Confidentialité

La conversion s'effectue entièrement dans votre navigateur. Vos données YAML et JSON ne sont ni envoyées ni stockées.