Канвертар YAML у JSON — бясплатна
Канвертуйце YAML у JSON і JSON у YAML у абодвух напрамках. Устаўце ў любым фармаце і адразу атрымайце пераўтвораны вывад — загрузка на сервер не патрабуецца.
Вынік з'явіцца тут…Тыповыя выкарыстанні
- Пераўтварыце YAML ў JSON для маніфестаў KubernetesПераўтварыце Kubernetes YAML ў JSON (ці наззад) для інструментаў, скрыптаў праверкі ці прымяненне непасрэдна праз API.
- Docker Compose YAML / JSON пераўтварэннеПераўтварыце docker-compose.yml ў JSON для інспекцыі ці наззад у YAML пасля праграмнага рэдактавання.
- Канверсія канфіга конвеера CI/CDПераўтвярайце канфігурацыі GitHub Actions, GitLab CI, CircleCI і іншых пайплайнаў паміж фарматамі YAML і JSON.
- Пераўтварэнне файлаў канфіга прыкладанняПераўтварыце файлы канфіга прыкладання між YAML і JSON — карысна пры пераходзе фреймворкаў ці абмене канфігаў між інструментамі.
- OpenAPI / Swagger спецыфікацыя пераўтварэннеПераўтварыце спецыфікацыі OpenAPI 3.x ці Swagger 2.0 між фарматамі YAML і JSON. Абодва фарматы сапраўды і ўзаемазамяняльныя.
Як гэта працуе
Абодва напрамкі канвертацыі — YAML у JSON і JSON у YAML — выконваюцца цалкам у вашым браўзеры з дапамогай уласнаручна напісанага разборшчыка і выдаўца, убудаваных у старонку, без бібліятэкі YAML трэціх бакоў і без задзейнічання сервера. Логіка знаходзіцца ў адзіным модулі TypeScript (lib/yamljson.ts), які апрацоўвае адлюстраванні, паслядоўнасці, скаляры, радкі ў двукоссі і выдаленне ўбудаваных каментарыяў.
- 1Увод папярэдне апрацоўваецца радок за радкомДля ўводу YAML разборшчык разбівае тэкст на радкі, прыбірае ўбудаваныя каментарыі (адсочваючы стан двукосся, каб пазбегнуць выдалення # унутры радкоў), вымярае глыбіню водступу і адкідвае пустыя радкі — будуючы структураваны спіс токенаў перад тым, як пачынаецца любы разбор.
- 2Рэкурсіўны разборшчык спуску будуе дрэва дадзеныхРазборшчык праходзіцца праз спіс токенаў, выкарыстоўваючы ўзровень водступу, каб вызначыць структуру. Ён распазнае элементы паслядоўнасці (- value), ключы адлюстравання (key: value) і ўкладзеныя блокі. Скаляры праходзяць праз тыпізаваны крок прымусу, які апрацоўвае null, булевы, цэлыя лікі (адхіляючы значэнні з вядучым нулём, як 007, каб пазбегнуць ціхага пашкоджання дадзеных) і дробы — з апцыянальным рэжымам, які захоўвае голыя словы YAML 1.1, як yes, no, on і off, як радкі, а не пераводзіць іх у булевы.
- 3Непадтрымліваемыя функцыі YAML пазначаюцца, а не ціха адкідваюццаПерад вывадам вываду інструмент сканіруе якары (&name), псеўданімы (*name), ключы зліцця (<<:), блокавыя скаляры (| і >), маркеры шматдакументаў (---) і паўторныя ключы адлюстравання. Любы з іх выклікае бачнае папярэджанне, а не вырабляе тонка няправільны JSON.
- 4JSON серыялізуецца ці YAML вырабляецца, потым робіцца даступнымДля YAML→JSON разабранае значэнне перадаецца ў JSON.stringify з абраным вамі водступам (2 прабелы, 4 прабелы, табуляцыя ці мінімізаваны). Для JSON→YAML уласны выдавец абыходзіць разабранае значэнне JavaScript і вырабляе YAML з водступам, экраніруючы радковыя скаляры ў двукоссі толькі пры неабходнасці (напрыклад, значэнні, якія ўтрымліваюць :, # ці выглядаюць як зарэзерваваныя словы). Вывад з'яўляецца імгненна падчас набору і можа быць скапіяваны ці спампаваны.
Звязаныя інструменты
Канвертар JSON у XML
Канвертуйце JSON у XML і XML у JSON у абодвух напрамках з захаваннем атрыбутаў і масіваў. Працуе цалкам у вашым браўзеры — нічога не загружаецца.
CSV у JSON
Канвертуйце CSV (або TSV) у JSON — масіў аб'ектаў або масіваў — з правільным аналізатарам RFC 4180, аўтавызначэннем раздзяляльніка і пераўтварэннем тыпаў. Працуе ў вашым браўзеры.
Дэкодэр JWT
Дэкадуйце і праглядайце любы JSON Web Token. Глядзіце загаловак, карысную нагрузку, тэрмін дзеяння і стандартныя прэтэнзіі. Усё працуе лакальна ў вашым браўзеры — токены ніколі не пакідаюць вашу прыладу.