tigtools

Конвертер YAML у JSON

Вставте YAML (маніфест Kubernetes, CI-файл, специфікацію OpenAPI або конфіг) і миттєво отримайте відформатований JSON. Нічого не завантажується.

Працює у вашому браузері Без реєстрації

Відступ

Конвертувати JSON у YAML

Як користуватися

  1. Вставте YAML у поле вводу або спробуйте приклад.
  2. Виберіть відступ 2 або 4 пробіли.
  3. Скопіюйте JSON або завантажте його як файл .json.

Як це працює

YAML аналізується відкритою бібліотекою yaml за основною схемою YAML 1.2, яку очікують сучасні інструменти: yes, no, on і off залишаються рядками, і лише true і false є булевими значеннями. Якорі (&name) та аліаси (*name) розгортаються, а ключі злиття << застосовуються; кількість розгортань аліасів обмежена, тому навмисно «вибухові» документи відхиляються, а не заморожують сторінку.

Файл із кількома документами, розділеними ---, стає масивом JSON з одним елементом на документ. Коментарі, якорі та теги не мають відповідника у JSON і відкидаються; ключі зберігають свій порядок. Позначки часу залишаються рядками. Цілі числа з більш ніж приблизно 15 цифрами втрачають точність, як і в будь-якому JSON, що обробляється в JavaScript.

Якщо YAML недійсний, показується перша помилка з рядком і стовпцем, наприклад табуляція, використана для відступу, або відсутня закривальна дужка. Для зворотного напряму скористайтеся конвертером JSON у YAML або двостороннім конвертером JSON ⇄ YAML.

Приклади

CI-файл з якорями

Список завдань, який повторно використовує блок defaults за допомогою <<: *defaults, стає JSON, у якому defaults скопійовано в кожне завдання, тож ви бачите, що саме отримує кожне завдання.

Багатодокументний файл Kubernetes

Файл із Deployment і Service, розділеними ---, стає масивом JSON із двох об’єктів, готових для kubectl або jq.

Поширені запитання

Чому yes залишається рядком?

YAML 1.2, який використовується тут і в більшості сучасних інструментів, вважає булевими значеннями лише true і false. Старіші парсери YAML 1.1 перетворювали yes, no, on та off на булеві значення, що спричиняло багато помилок.

Що відбувається з коментарями?

JSON не має коментарів, тому вони відкидаються. Самі дані не змінюються.

Чи є обмеження розміру?

Лише в пам’яті вашого браузера. Великі файли перетворюються з короткою паузою під час введення, тому сторінка залишається чуйною.

Конфіденційність

Перетворення виконується повністю у вашому браузері. Ваші YAML і JSON не завантажуються й не зберігаються.