Pereiti prie pagrindinio turinio

YAML į JSON konverteris nemokamai

Konvertuokite YAML į JSON ir JSON į YAML abiem kryptimis. Įklijuokite bet kuriuo formatu ir momentaliai gaukite konvertuotą išvestį — nereikia serverio įkėlimo.

Veikia neprisijungus, kai įkeliama
JSON išvestis
Išvestis pasirodys čia…

Dažniausi naudojimo būdai

  • Konvertuokite YAML į JSON Kubernetes manifestamsKonvertuokite Kubernetes YAML į JSON (arba atgal) įrankiams, patikrinimo scenarijams arba tiesioginiui taikymui per API.
  • Docker Compose YAML / JSON konversijaKonvertuokite docker-compose.yml į JSON peržiūrai arba atgal į YAML po programinių keitimų.
  • CI/CD magistralės konfigūracijos konversijaKonvertuokite GitHub veiksmus, GitLab CI, CircleCI ir kitas magistralės konfigūracijas tarp YAML ir JSON formatų.
  • Programos konfigūracijos failo konversijaKonvertuokite programos konfigūracijos failus tarp YAML ir JSON — naudinga keičiant sistemą arba dalindamiesi konfigūracijomis tarp įrankių.
  • OpenAPI / Swagger specifikacijos konversijaKonvertuokite OpenAPI 3.x arba Swagger 2.0 API specifikacijas tarp YAML ir JSON formatų. Abu formatai yra teisingi ir keičiami.

Kaip tai veikia

Abi konvertavimo kryptys — YAML į JSON ir JSON į YAML — vyksta visiškai jūsų naršyklėje, naudojant rankomis parašytą analizatorių ir generatorių, integruotus į puslapį, be jokios trečiosios šalies YAML bibliotekos ir be serverio dalyvavimo. Logika gyvena viename TypeScript modulyje (lib/yamljson.ts), kuris apdoroja žemėlapius, sekas, skaliarus, eilutes kabutėse ir vidinių komentarų pašalinimą.

  1. 1
    Įvestis iš anksto apdorojama eilutė po eilutės
    YAML įvesčiai analizatorius padalija tekstą į eilutes, pašalina vidinius komentarus (sekdamas kabučių būseną, kad nepašalintų # eilučių viduje), matuoja įtraukos gylį ir atmeta tuščias eilutes — sudarydamas struktūrizuotą žetonų sąrašą prieš pradedant bet kokį analizavimą.
  2. 2
    Rekursyvaus nusileidimo analizatorius sukuria duomenų medį
    Analizatorius apeina žetonų sąrašą, naudodamas įtraukos lygį struktūrai nustatyti. Jis atpažįsta sekos elementus (- reikšmė), žemėlapio raktus (raktas: reikšmė) ir įdėtuosius blokus. Skaliarai eina per tipizuoto konvertavimo žingsnį, kuris apdoroja null, loginius, sveikuosius skaičius (atmetant priekyje nulį turinčias reikšmes, tokias kaip 007, kad išvengtų tylaus duomenų sugadinimo) ir slankiojo kablelio skaičius — su pasirenkamu režimu, kuris išlaiko YAML 1.1 grynažodžius, tokius kaip yes, no, on ir off, kaip eilutes, o ne konvertuoja juos į loginius.
  3. 3
    Nepalaikomos YAML funkcijos pažymimos, o ne tyliai atmetamos
    Prieš pateikiant išvestį, įrankis ieško nuorodų (&name), aliasų (*name), sujungimo raktų (<<:), blokinių skaliarų (| ir >), kelių dokumentų žymeklių (---) ir dubliuotų žemėlapio raktų. Bet kuris iš jų suaktyvina matomą įspėjimą, o ne sukuria subtiliai neteisingą JSON.
  4. 4
    JSON serializuojamas arba YAML sugeneruojamas, tada padaromas prieinamas
    YAML→JSON kryptimi analizuota reikšmė perduodama JSON.stringify su jūsų pasirinkta įtrauka (2 tarpai, 4 tarpai, tabuliavimas ar sutraukta). JSON→YAML kryptimi pasirinktinis generatorius apeina analizuotą JavaScript reikšmę ir sukuria įtrauktą YAML, apsaugant eilutės skaliarus kabutėmis tik kai reikia (pvz., reikšmės, turinčios :, # ar panašios į rezervuotus žodžius). Išvestis pasirodo akimirksniu, kol rašote, ir gali būti nukopijuota ar atsisiųsta.

Susiję įrankiai

Dažnai užduodami klausimai