JSON na Prevodník YAML
Preveďte štruktúru JSON na čistý formát YAML. Ideálne pre manifesty Kubernetes a cloudové konfigurácie.
Preveďte štruktúru JSON na čistý formát YAML. Ideálne pre manifesty Kubernetes a cloudové konfigurácie.
Prechod z JSON na YAML je hlavne o tom, aby boli údaje pre ľudí čitateľnejšie. Oba formáty opisujú rovnaké druhy štruktúr – objekty/mapy, polia/sekvencie, skaláre – ale syntax YAML založená na odsadení, voliteľné citácie a podpora komentárov uľahčujú skenovanie a úpravy ručne. Konfiguračné súbory sú kanonický prípad použitia: manifesty Kubernetes, pracovné postupy CI, príručky Ansible a desiatky ďalších nástrojov si vybrali YAML špecificky, pretože ich primárnymi editormi sú ľudia.
Tento konvertor používa js-yaml na serializáciu analyzovaného objektu JSON do YAML. Výsledok presne zachováva štruktúru údajov pri použití konvencií YAML: odsadenie pre vnorenie, zoznamy pre polia, páry kľúč-hodnota pre vlastnosti objektu. Prísne dvojité citácie JSON sú uvoľnené; vo výstupe sú citované iba reťazce obsahujúce špeciálne znaky alebo tie, ktoré vyzerajú ako iné typy.
Konverzia zachováva informácie okrem prípadov, keď YAML pridáva výraznosť, ktorú JSON nemal. Komentáre nie je možné rekonštruovať (JSON nemal žiadne). Odkazy na kotvy a aliasy by mohli potenciálne komprimovať opakované štruktúry, ale negenerujú sa automaticky; výstup rozšíri všetky odkazy v riadku.
YAML je dramaticky čitateľnejší ako JSON pre úpravu konfigurácie pre ľudí. Odsadenie nahrádza vkladanie zložených zátvoriek, úvodzovky sú voliteľné pre jednoduché reťazce a komentáre môžu dokumentovať nejasné nastavenia. Pre súbory, ktoré udržiavajú ľudia – konfigurácia aplikácií, infraštruktúra ako kód, zostavovanie kanálov – je YAML takmer vždy tým správnym cieľovým formátom.
Moderné nástroje infraštruktúry v drvivej väčšine uprednostňujú YAML. Kubernetes, Helm charts, Ansible, GitHub Actions, GitLab CI, Docker Compose a mnohé ďalšie nástroje buď preferujú alebo vyžadujú YAML. Konverzia exportov JSON z jedného systému na konfiguráciu YAML pre iný je rutinným integračným krokom.
Prilepte JSON a získajte YAML.
Funkcia výpisu js-yaml prechádza stromom objektov JavaScript a vydáva YAML pomocou konfigurovateľného formátovania. Hĺbka odsadenia, šírka čiary, prah štýlu toku a spracovanie cenových ponúk sú všetky parametre. Predvolené nastavenia vytvárajú YAML v štýle bloku s 2-medzerovým odsadením, čo je najbežnejšia konvencia.
Citovanie reťazcov sa riadi pravidlami YAML: reťazce, ktoré vyzerajú ako iné typy (čísla, booleovské hodnoty, null, dátumy), sú citované, aby sa vynútila interpretácia reťazcov; reťazce obsahujúce špeciálne znaky (dvojbodky, hash, úvodné pomlčky) sú v úvodzovkách; jednoduché abecedné reťazce sú ponechané bez úvodzoviek.
Výstup je kompatibilný s YAML 1.2 a analyzuje čisto s js-yaml, PyYAML a ďalšími hlavnými knižnicami YAML. Idempotentné spiatočné cesty (JSON → YAML → JSON) zachovávajú údaje, hoci reprezentácia YAML vyberá kanonické formátovanie, ktoré sa môže líšiť od ručne písaného ekvivalentu.