Brezplačni pretvornik

YAML za JSON pretvornik

Hitra in varna pretvorba YAML v JSON. Popoln za konfiguracijske datoteke in analizo podatkov.

oz

O tem orodju

YAML in JSON sta tesno povezana formata – JSON je tehnično stroga podmnožica YAML 1.2 – in pretvorba med njima je običajno enostavna. YAML dodaja ljudem prijazne funkcije, ki jih JSON nima: komentarje, večvrstične nize brez ubežnikov, sklicevanja na sidra in vzdevke, bolj prilagodljivo navajanje in strukturo na podlagi zamikov, ki je podobna naravni postavitvi dokumenta. Zaradi tega je YAML priljubljena izbira za konfiguracijske datoteke (manifesti Kubernetes, poteki dela GitHub Actions, Docker Compose), medtem ko JSON prevladuje nad uporabnimi obremenitvami API-ja.

Pretvarjanje YAML v JSON običajno pomeni opustitev človeku prijaznih dodatkov YAML v zameno za format, ki ga stroji lažje razčlenijo in je lingua franca API-jev HTTP. Komentarji so izpuščeni (JSON jih nima). Sklici sidra se razrešijo v njihove referenčne vrednosti. Večvrstični nizi se strnejo v standardne nize JSON z vdelanimi novimi vrsticami.

Ta pretvornik razčlenjuje YAML z uporabo js-yaml, najpogosteje uporabljene knjižnice YAML v JavaScriptu. Izhod je ustvarjen z uporabo JSON.stringify z neobveznim zamikom. Pretvorba obravnava vso standardno sintakso YAML 1.2, vključno s slogom poteka, slogom blokov, skalarji, zaporedji, preslikavami, sidri, vzdevki in standardnimi vrstami oznak.

Zakaj pretvoriti YAML v JSON

Večina API-jev in veliko programskih okolij pričakuje JSON. Konfiguracijske datoteke, napisane v YAML, je treba pri integraciji s kodo ali storitvami, ki sprejemajo samo JSON, pretvoriti v JSON. Orodja za JSON so prav tako bogatejša: jq, JSON Path, JSON Schema in širok ekosistem validatorjev in transformatorjev vsi predpostavljajo vnos JSON.

JSON je tudi nedvoumen na načine, ki jih YAML ni. Prilagodljivost YAML ustvarja presenečenja pri razčlenjevanju — nizi, kot je 'no', razčlenjevanje kot logična vrednost false v YAML 1.1, razčlenjevanje nizov različice kot lebdeči, napake pri zamiku, ki povzročajo tihe strukturne spremembe. Pretvorba v JSON zamrzne podatke v manj dvoumno obliko.

Kako uporabljati

Prilepite YAML, pridobite JSON.

  1. Dodajte svoj YAML: Prilepite besedilo YAML v območje za vnos ali spustite datoteko .yml/.yaml. js-yaml sprejema celotno sintakso YAML 1.2.
  2. Pretvori: js-yaml razčleni YAML v objekt JavaScript, JSON.stringify pa ga serializira z zamikom dveh presledkov. Komentarji so opuščeni, sidra so razrešena in posebni tipi YAML (časovni žigi, binarni podatki) so pretvorjeni v predstavitve, združljive z JSON.
  3. Preglejte rezultat: Potrdite, da se struktura JSON ujema s pričakovanim. Primerjajte z izvornim YAML, da odkrijete mesta, kjer je ohlapno tipkanje YAML povzročilo nepričakovane vrednosti JSON.
  4. Prenesite ali kopirajte: Shrani kot .json ali kopiraj v odložišče. Izhod je veljaven JSON, ki ga lahko uporabi kateri koli razčlenjevalnik JSON.

Pogosti primeri uporabe

Tehnične podrobnosti

js-yaml implementira YAML 1.2 z izbirno podporo za domislice YAML 1.1 (težava 'ne'-as-false, osmiška števila brez predpone 0o). Razčlenjevalnik ustvari drevo predmetov JavaScript z uporabo izvornih tipov: številk, nizov, logičnih vrednosti, ničelnih vrednosti, nizov in navadnih predmetov.

JSON.stringify serializira drevo objektov v JSON. Izbirni zamik ustvari lepo natisnjen izpis; brez njega je rezultat kompakten enovrstični JSON. Posebne vrednosti (NaN, Infinity, nedefinirano) niso veljavni JSON; pretvornik jih prisili v nič, kjer so prisotni.

Robni primeri: časovni žigi YAML postanejo nizi ISO-8601 v JSON. Binarni podatki YAML (kodirani z base64) postanejo niz. Sidra in vzdevki so v JSON razrešeni v podvojene vrednosti, ker JSON nima referenčne sintakse.

Najboljše prakse

Pogosta vprašanja

Ali pretvorba YAML v JSON spremeni vsebino?
Vsebina je ohranjena čim bolj natančno. Vendar pa nekatere funkcije, specifične za obliko, morda nimajo neposrednih ustreznikov, zato lahko pride do manjših razlik v oblikovanju.
Zakaj pretvoriti podatke v format JSON?
JSON je standardni format podatkov za spletne API-je in aplikacije JavaScript. Je človeku berljiv, široko podprt v programskih jezikih in ima enostavnejšo sintakso kot XML.
Ali pretvornik obravnava ugnezdene ali kompleksne strukture YAML?
ja Orodje pravilno razčleni ugnezdene predmete, nize in vse standardne tipe podatkov YAML, pri čemer ohrani celotno strukturo podatkov v izhodu JSON.
Je ta pretvorba varna in zasebna?
ja Vsa obdelava poteka lokalno v vašem brskalniku. Vaši podatki nikoli ne zapustijo vaše naprave – brez nalaganja na strežnik, brez obdelave v oblaku, brez zbiranja podatkov.
Ali bo moj YAML povratno potoval čisto?
Strukturno da, če ponovno oddate JSON nazaj v YAML. Komentarji in struktura sidra so izgubljeni; surove vrednosti se ohranijo.
Ali so moji podatki naloženi na strežnik?
Ne. js-yaml se izvaja v vašem brskalniku.
Kakšna je največja velikost?
Do 50 MB. js-yaml takoj obravnava tipične konfiguracijske datoteke; razčlenjevanje zelo velikega YAML lahko traja precej časa.
Ali podpira YAML z več dokumenti?
YAML podpira več dokumentov v eni datoteki, ločenih z ---. Pretvornik privzeto obdela prvi dokument; za obdelavo več dokumentov najprej razdelite YAML.