tigtools

Convertor YAML în JSON

Lipește YAML (un manifest Kubernetes, un fișier CI, o specificație OpenAPI sau o configurație) și obține imediat JSON formatat. Nimic nu este încărcat.

Rulează în browser Fără înregistrare

Indentare

Convertește JSON în YAML în schimb

Cum se folosește

  1. Lipește YAML în câmpul de intrare sau încearcă exemplul.
  2. Alege indentarea cu 2 sau 4 spații.
  3. Copiază JSON-ul sau descarcă-l ca fișier .json.

Cum funcționează

YAML-ul este analizat cu biblioteca open-source yaml folosind schema de bază YAML 1.2, ceea ce așteaptă instrumentele moderne: yes, no, on și off rămân șiruri, iar doar true și false sunt valori booleene. Ancorele (&name) și aliasurile (*name) sunt expandate, iar cheile de îmbinare << sunt aplicate; numărul de expandări ale aliasurilor este limitat, astfel încât documentele cu explozie deliberată sunt respinse în loc să blocheze pagina.

Un fișier cu mai multe documente separate prin --- devine un array JSON cu câte un element pentru fiecare document. Comentariile, ancorele și etichetele nu au echivalent în JSON și sunt eliminate; cheile își păstrează ordinea. Marcajele de timp rămân șiruri. Numerele întregi cu mai mult de aproximativ 15 cifre pierd din precizie, la fel ca în cazul oricărui JSON manipulat în JavaScript.

Dacă YAML-ul este invalid, prima eroare este afișată cu linia și coloana, de exemplu un tab folosit pentru indentare sau o paranteză de închidere lipsă. Pentru direcția inversă folosește JSON în YAML sau convertorul bidirecțional JSON ⇄ YAML.

Exemple

Fișier CI cu ancore

O listă de joburi care reutilizează un bloc de valori implicite cu <<: *defaults devine JSON cu valorile implicite copiate în fiecare job, astfel încât să vezi exact ce primește fiecare job.

Fișier Kubernetes cu mai multe documente

Un fișier cu un Deployment și un Service separate prin --- devine un array JSON cu două obiecte, gata pentru kubectl sau jq.

Întrebări frecvente

De ce rămâne „yes” un șir de caractere?

YAML 1.2, folosit aici și de majoritatea instrumentelor actuale, tratează doar true și false ca valori booleene. Analizatoarele YAML 1.1 mai vechi transformau yes, no, on și off în valori booleene, ceea ce provoca multe erori.

Ce se întâmplă cu comentariile?

JSON nu are comentarii, așa că acestea sunt eliminate. Datele în sine rămân neschimbate.

Există o limită de dimensiune?

Doar în memoria browserului tău. Fișierele mari sunt convertite după o scurtă pauză pe măsură ce tastezi, astfel încât pagina rămâne receptivă.

Confidențialitate

Conversia rulează integral în browserul tău. Datele YAML și JSON nu sunt încărcate sau stocate.