ToolMill.io

YAML către JSON

Convertiți YAML în JSON curat direct în browser-ul dvs. atunci când aveți nevoie pentru a muta datele de tip config în fluxuri de lucru mai stricte bazate pe JSON. Această pagină este utilă pentru pregătirea rapidă a încărcăturii utile, configurarea inspecției și transformarea YAML editat de om într-un format pe care API-urile, scripturile și validatorii îl așteaptă de obicei.

Date

Încearcă.

Exemple

Valoarea-cheie simplă YAML
Intrare
name: ToolMill
active: true
count: 3
Rezultat
{
  "name": "ToolMill",
  "active": true,
  "count": 3
}
Obiect YAML cucurat
Intrare
service:
  name: api
  ports:
    - 443
    - 8443
Rezultat
{
  "service": {
    "name": "api",
    "ports": [443, 8443]
  }
}
Lista YAML în matrice JSON
Intrare
users:
  - name: Ava
    role: editor
  - name: Leo
    role: viewer
Rezultat
{
  "users": [
    {
      "name": "Ava",
      "role": "editor"
    },
    {
      "name": "Leo",
      "role": "viewer"
    }
  ]
}

Cum harti YAML la JSON

Hărțile YAML devin obiecte JSON, secvențele YAML devin matrice JSON, iar valorile scalare devin șiruri JSON, numere, booleans sau nule în funcție de modul în care sunt interpretate. Asta face această pagină utilă pentru transformarea textului în stil de configurare într-un format mai strict orientat spre mașină.

Norme de intrare care contează înainte de conversie

YAML depinde foarte mult de structura de indentare și listă. Spațierea consecventă, utilizarea corectă a colonului, și în mod corespunzător cuibul lista elemente contează mai mult decât fac în formate cu bretele explicite și paranteze. În cazul în care textul lipit a rupt crestătură sau structură parțială, conversia poate eșua sau produce ieșire neașteptată.

Ce schimbări în timpul conversiei

Ieșirea JSON devine explicită cu privire la structură prin adăugarea de bretele, paranteze, virge și coarde citate, acolo unde este necesar. Comentariile YAML nu trec în JSON de ieșire, iar stilul de formatare este normalizat la JSON mai degrabă decât păstrarea aspectul original al fragmentului YAML.

Greşeli comune de conversie

Greșelile comune includ indentare rupt, lista de elemente care nu sunt aliniate corect, colonuri lipsă, fragmente lipite parțial, și presupuneri că comentarii sau fiecare detaliu original formatare va supraviețui conversiei. O altă surpriză frecventă este interpretarea de tip: valori necitite, cum ar fi adevărat, fals, nul, sau 3 pot deveni booleans, nul, sau numere în JSON ieșire în loc de siruri de caractere.

Fluxuri de lucru practice

Înainte de a vă baza pe convertit JSON în automatizare sau producție

Înainte de a refolosi JSON în desfășurare sau fluxuri de lucru de automatizare, confirmați că destinația așteaptă aceeași structură, interpretare scalară, și citând comportamentul pe care îl vedeți acum în forma JSON. O conversie reușită este utilă, însă compatibilitatea cu consumatorul real trebuie verificată separat.

Caracteristici YAML și cazuri de margine Această conversie poate simplifica

Unele caracteristici YAML pot fi exprimate în moduri care devin mai puțin evidente după convertirea la JSON. Ancore, pseudonime, comentarii, stil de formatare și anumite convenții scalare sunt exemple în care JSON convertit poate păstra datele de bază în timp ce pierde context sau detalii de prezentare orientate spre om.

Cum să interpretaţi ieşirea JSON după conversia YAML

Ieșirea JSON este o reprezentare prietenoasă cu mașina a structurii parsed from the YAML input. Poate fi mai ușor să valideze sau să treacă în API, dar este încă important să se revizuiască forma de array-uri, obiecte, și valorile scalare înainte de a trata ca un înlocuitor drop-in pentru fișierul original YAML.

Utilizați această pagină atunci când aveți nevoie pentru a transforma un fragment config în JSON pentru un API sau script, verificați structura unei liste YAML înainte de a o înmâna la un alt instrument, sau converti un manifest-editate umană într-un format pe care validatorii mai stricte pot citi. Este cel mai potrivit pentru conversii rapide lipite mai degrabă decât la scară largă config migrarea sau caracteristici avansate YAML.