Безплатен конвертор

YAML към JSON конвертор

Бързо и сигурно преобразуване на YAML в JSON. Перфектен за конфигурационни файлове и анализ на данни.

или

За този инструмент

YAML и JSON са тясно свързани формати — JSON технически е строго подмножество на YAML 1.2 — и конвертирането между тях обикновено е лесно. YAML добавя удобни за хората функции, които липсват на JSON: коментари, многоредови низове без екраниране, препратки към котва и псевдоним, по-гъвкаво цитиране и структура, базирана на отстъп, която прилича на естествено оформление на документ. Това прави YAML популярният избор за конфигурационни файлове (Kubernetes манифести, работни потоци GitHub Actions, Docker Compose), докато JSON доминира полезните натоварвания на API.

Преобразуването на YAML в JSON обикновено означава отказ от удобните за човека екстри на YAML в замяна на формат, който машините анализират по-лесно и това е лингва франка на HTTP API. Коментарите са премахнати (JSON няма). Препратките към котва се разделят в техните референтни стойности. Многоредовите низове се свиват до стандартни JSON низове с вградени нови редове.

Този конвертор анализира YAML с помощта на js-yaml, най-широко използваната YAML библиотека в JavaScript. Изходът се генерира с помощта на JSON.stringify с незадължителен отстъп. Преобразуването обработва целия стандартен синтаксис на YAML 1.2, включително стил на потока, стил на блок, скалари, последователности, съпоставяния, котви, псевдоними и стандартните типове тагове.

Защо да конвертирате YAML в JSON

Повечето API и много среди за програмиране очакват JSON. Конфигурационните файлове, написани на YAML, трябва да бъдат преобразувани в JSON при интегриране с код или услуги, които приемат само JSON. Инструментите за JSON също са по-изобилни: jq, JSON Path, JSON Schema и широка екосистема от валидатори и трансформатори приемат JSON вход.

JSON също е недвусмислен по начини, по които YAML не е. Гъвкавостта на YAML създава изненади при синтактичния анализ — низове като „не“ анализират като булево невярно в YAML 1.1, низове на версията се анализират като плаващи, грешки при отстъпа, предизвикващи тихи структурни промени. Преобразуването в JSON замразява данните в по-малко двусмислена форма.

Как да използвате

Поставете YAML, вземете JSON.

  1. Добавете своя YAML: Поставете YAML текст в областта за въвеждане или пуснете .yml/.yaml файл. js-yaml приема пълния синтаксис YAML 1.2.
  2. Преобразуване: js-yaml анализира YAML в JavaScript обект, а JSON.stringify го сериализира с отстъп от два интервала. Коментарите се премахват, котвите се разрешават и специалните типове YAML (времеви клейма, двоични данни) се преобразуват в JSON-съвместими представяния.
  3. Прегледайте резултата: Потвърдете, че JSON структурата отговаря на това, което сте очаквали. Сравнете с изходния YAML, за да откриете места, където свободното въвеждане на YAML е произвело неочаквани JSON стойности.
  4. Изтеглете или копирайте: Запазете като .json или копирайте в клипборда. Резултатът е валиден JSON, използваем от всеки анализатор на JSON.

Обичайни случаи на употреба

Технически подробности

js-yaml имплементира YAML 1.2 с незадължителна поддръжка за странности на YAML 1.1 (проблемът „no“ като false, осмични числа без префикс 0o). Анализаторът създава дърво на JavaScript обекти, използвайки собствени типове: числа, низове, булеви стойности, нула, масиви и обикновени обекти.

JSON.stringify сериализира дървото на обектите в JSON. Незадължителният отстъп създава красиво отпечатан резултат; без него резултатът е компактен едноредов JSON. Специалните стойности (NaN, Infinity, undefined) не са валиден JSON; конверторът ги принуждава да нулират, когато присъстват.

Крайни случаи: времевите клейма на YAML стават низове ISO-8601 в JSON. YAML двоичните данни (кодирани base64) се превръщат в низ. Котвите и псевдонимите се преобразуват в дублиращи се стойности в JSON, тъй като JSON няма референтен синтаксис.

Най-добри практики

Често задавани въпроси

Преобразуването на YAML в JSON променя ли съдържанието?
Съдържанието е запазено възможно най-точно. Някои специфични за формата функции обаче може да нямат директни еквиваленти, така че могат да възникнат малки разлики във форматирането.
Защо да конвертирате данни във формат JSON?
JSON е стандартният формат за данни за уеб API и JavaScript приложения. Той е четим от хора, широко се поддържа от езици за програмиране и има по-прост синтаксис от XML.
Конверторът обработва ли вложени или сложни YAML структури?
да Инструментът анализира правилно вложени обекти, масиви и всички стандартни YAML типове данни, като запазва пълната структура на данните в JSON изхода.
Сигурно и поверително ли е това преобразуване?
да Цялата обработка се извършва локално във вашия браузър. Вашите данни никога не напускат вашето устройство — без качване на сървър, без обработка в облак, без събиране на данни.
Моят YAML ще се върне ли чисто?
Структурно да, ако изпратите отново JSON обратно към YAML. Коментари и структура на котва се губят; необработените стойности се запазват.
Данните ми качват ли се на сървър?
Не. js-yaml работи във вашия браузър.
Какъв е максималният размер?
До 50 MB. js-yaml обработва незабавно типичните конфигурационни файлове; много голям YAML може да отнеме значително време за анализ.
Поддържа ли многодокументен YAML?
YAML поддържа множество документи в един файл, разделени с ---. Конверторът обработва първия документ по подразбиране; за обработка на множество документи, първо разделете YAML.