Pāriet uz galveno saturu

YAML uz JSON konvertētājs bez maksas

Konvertē YAML uz JSON un JSON uz YAML abos virzienos. Ielīmē jebkurā formātā un tūlītēji saņem konvertēto izvadu — bez servera augšupielādes.

Darbojas bezsaistē pēc ielādes
JSON izvade
Izvade parādīsies šeit…

Biežākie lietojumi

  • Pārvērtiet YAML uz JSON Kubernetes manifestiemPārvērtiet Kubernetes YAML uz JSON (vai atpakaļ) instrumentiem, validācijas skriptiem vai tiešu pielietošanu caur API.
  • Docker Compose YAML / JSON konversijaPārvērtiet docker-compose.yml uz JSON pārbaudei vai atpakaļ uz YAML pēc programmatiskiem labojumiem.
  • CI/CD cauruļvada konfigurācijas konversijaPārvērtiet GitHub darbības, GitLab CI, CircleCI un citu cauruļvada konfigurācijas YAML un JSON formātos.
  • Programmas konfigurācijas faila konversijaPārvērtiet programmas konfigurācijas failus starp YAML un JSON — noderīgi, pārliecoties uz ietvaru vai konfigurāciju kopīgošanu starp instrumentiem.
  • OpenAPI / Swagger specifikācijas konversijaPārvērtiet OpenAPI 3.x vai Swagger 2.0 API specifikācijas starp YAML un JSON formātiem. Abi formāti ir derīgi un savstarpēji aizstājami.

Kā tas darbojas

Abi konvertēšanas virzieni — YAML uz JSON un JSON uz YAML — darbojas pilnībā jūsu pārlūkprogrammā, izmantojot pašrakstītu parsētāju un izvadītāju, kas iebūvēts lapā, bez trešās puses YAML bibliotēkas un bez iesaistīta servera. Loģika dzīvo vienā TypeScript modulī (lib/yamljson.ts), kas apstrādā kartēšanas, secības, skalārus, citētas virknes un iekļauto komentāru noņemšanu.

  1. 1
    Ievade tiek priekšapstrādāta rindu pa rindai
    YAML ievadei parsētājs sadala tekstu rindās, noņem iekļautos komentārus (izsekojot citāta stāvokli, lai izvairītos no # noņemšanas virkņu iekšpusē), mēra atkāpes dziļumu un atmet tukšas rindas — veidojot strukturētu marķieru sarakstu, pirms sākas jebkāda parsēšana.
  2. 2
    Rekursīvās lejupejas parsētājs veido datu koku
    Parsētājs iet cauri marķieru sarakstam, izmantojot atkāpes līmeni struktūras noteikšanai. Tas atpazīst secības vienumus (- vērtība), kartēšanas atslēgas (atslēga: vērtība) un ligzdotus blokus. Skalāri iziet cauri tipizētam pārveides solim, kas apstrādā null, bulevu vērtības, veselus skaitļus (noraidot vadošas-nulles vērtības, piemēram, 007, lai izvairītos no klusas datu bojāšanas) un peldošā punkta skaitļus — ar neobligātu režīmu, kas saglabā YAML 1.1 tīros vārdus, piemēram, yes, no, on un off, kā virknes, nevis konvertē tos bulevu vērtībās.
  3. 3
    Neatbalstītas YAML iespējas tiek atzīmētas, nevis klusi izmestas
    Pirms izvades izdošanas rīks skenē enkurus (&name), aizstājvārdus (*name), apvienošanas atslēgas (<<:), bloka skalārus (| un >), vairāku-dokumentu marķierus (---) un dublicētas kartēšanas atslēgas. Jebkurš no tiem izraisa redzamu brīdinājumu, nevis rada smalki nepareizu JSON.
  4. 4
    JSON tiek serializēts vai YAML tiek izdots, tad padarīts pieejams
    YAML→JSON gadījumā parsētā vērtība tiek nodota JSON.stringify ar jūsu izvēlēto atkāpi (2 atstarpes, 4 atstarpes, tabulācija vai minificēts). JSON→YAML gadījumā pielāgots izvadītājs iet cauri parsētajai JavaScript vērtībai un rada atkāptu YAML, citējot virkņu skalārus tikai tad, kad nepieciešams (piemēram, vērtības, kas satur :, # vai izskatās pēc rezervētiem vārdiem). Izvade parādās uzreiz, kamēr rakstāt, un to var kopēt vai lejupielādēt.

Saistītie rīki

Bieži uzdotie jautājumi