Przejdź do treści

Konwerter JSON ↔ YAML

JSON↔YAML Konwerter konwertuje YAML do JSON i JSON do YAML lokalnie z synchronizacją side-by-side, sprawdzaniem poprawności tylko składni, sortowaniem kluczy, kontrolą wcięć, YAML wielu dokumentów i kopiowaniem/pobieraniem.

Wcięcie JSON

Wcięcie YAML

Sortuj klucze obiektu

Podziel tablicę na YAML wielodokumentowy (rozdzielone ---)

JSON

Znaki

0 / 500,000

YAML

Znaki

0 / 500,000

Konwerter JSON ↔ YAML

Szybki start

1
Wklej lub wpisz JSON w lewym edytorze, a YAML po prawej stronie zaktualizuje się automatycznie.
2
Możesz także wpisać YAML po prawej stronie, a JSON po lewej stronie zaktualizuje się automatycznie.
3
Synchronizacja jest w pełni dwukierunkowa. Nie jest potrzebny żaden przełącznik trybu: edytuj dowolną stronę, a druga strona zostanie natychmiast zaktualizowana.
4
Użyj górnego paska narzędzi, aby ustawić wcięcie JSON/YAML, włączyć sortowanie według kluczy i przełączyć wyjście YAML zawierające wiele dokumentów.
5
Naciśnij Tab w edytorze, aby wstawić wcięcie zamiast przesuwać fokus.
6
Każdy edytor ma przyciski Kopiuj i Wyczyść w prawym górnym rogu. Wyczyszczenie którejkolwiek strony powoduje wyczyszczenie obu stron.

Typowe scenariusze

Tworzenie Kubernetes

konwertuj manifesty zasobów K8 między YAML i JSON, aby sprawdzić strukturę z dowolnego widoku.

Debugowanie wartości Helm

przekonwertuj wartości.yaml na JSON, aby sprawdzić typy i zagnieżdżenia w swoim IDE.

Potoki CI/CD

szybko konwertuj fragmenty między GitHub Actions (YAML) a systemami CI korzystającymi z JSON.

Debugowanie API

konwertuj ładunki JSON na YAML, aby uzyskać wyraźniejszy widok hierarchiczny.

Migracja konfiguracji

konwertuj po jednym wklejonym fragmencie konfiguracji, sprawdzając, jak zmieniają się komentarze, kotwice i separatory dokumentów w JSON.

Formatowanie i sprawdzanie składni

sprawdź składnię JSON/YAML poprzez synchronizację dwukierunkową, z lokalizacją błędu w wierszu/kolumnie.

Wskazówki użycia

W większości przypadków działa wcięcie JSON z 2 spacjami; użyj 4 spacji do głębokiego zagnieżdżenia lub plików wartości Helma.
Włącz sortowanie kluczy, aby wyświetlać klucze obiektów w kolejności alfabetycznej. Ułatwia to porównywanie różnic konfiguracji.
Gdy katalog główny JSON jest tablicą, włącz opcję Multi-document YAML, aby podzielić każdy element na osobny dokument (---), co jest przydatne w przypadku plików K8 z wieloma zasobami.
Jeśli dane wejściowe są nieprawidłowe, edytowana strona podświetla linię błędu; najedź kursorem lub dotknij, aby wyświetlić szczegóły linii/kolumny, a wygenerowana strona zostanie wyczyszczona zamiast pokazywać nieaktualne dane wyjściowe.
W przypadku dużej zawartości najpierw wklej i poczekaj na synchronizację, a następnie kontynuuj edycję, aby uniknąć nadmiernej ponownej konwersji.

Umowa przekształceniowa

Źródłem jest ostatni edytowany redaktor. Drugi edytor jest z niego generowany ponownie, gdy dane wejściowe są prawidłowe.
Wiele dokumentów YAML staje się tablicą JSON. Pojedynczy dokument YAML staje się jedną wartością JSON.
Gdy włączona jest obsługa wielu dokumentów YAML, tablica główna JSON jest zapisywana jako --- oddzielone dokumenty YAML; pusta tablica pozostaje [] dla odwracalności.
Sortowanie kluczy zmienia kolejność kluczy obiektowych rekurencyjnie przed wyjściem, co pomaga w porównaniu, ale zmienia ręcznie utrzymywaną kolejność kluczy.
Walidacja dotyczy wyłącznie składni. To narzędzie nie sprawdza zasobów Kubernetes, wykresów Helm, plików Open API, schematu JSON ani reguł zasad.
Teksty JSON i YAML są wersjami roboczymi sesji; Ustawienia wcięć, sortowania, obsługi wielu dokumentów, numerów wierszy i zawijania pozostają w preferencjach urządzenia.
Limity gości/użytkowników/subskrybentów to 500 000/2 000 000/5 000 000 znaków wejściowych, 25/100/250 dokumentów YAML, 5000/20 000/50 000 węzłów YAML, głębokość 40/80/120, 50 000/200 000/500 000 węzłów JSON, Właściwości JSON 25 000/100 000/250 000 i dane wyjściowe 16/48/96 MiB.

Stratne granice podróży w obie strony

Komentarze YAML są odrzucane, ponieważ JSON nie ma pola komentarza.
Kotwice, aliasy i klucze scalające YAML są rozwijane w konkretne wartości JSON; struktura referencyjna nie może zostać odbudowana automatycznie.
Styl cytatu, styl skalarny bloku, znaczniki dokumentu i niestandardowe znaczniki YAML mogą zostać zregenerowane lub utracone, ponieważ JSON przechowuje tylko wartości danych.
Duże liczby całkowite nadal mają dokładność liczbową JavaScript. Przed konwersją podaj identyfikatory płatków śniegu, 64-bitowe znaczniki czasu i inne dokładne identyfikatory.
Przesyłanie plików, pobieranie URL, konwersja plików wsadowych, łącza do udostępniania, przykładowe biblioteki, renderowanie Helm, Kustomize, wyrażenia yq/jq, sprawdzanie poprawności schematu i konwersja wielu formatów znajdują się poza tą stroną.

Ograniczenia i kompatybilność

Analiza YAML jest zgodna ze specyfikacją YAML1.2. Starsze zachowanie YAML1.1, takie jak automatyczna konwersja wartości logicznych tak/nie/włączanie/wyłączanie, może się różnić.
Numery JSON są zgodne z ograniczeniami JavaScript IEEE 754. Liczby całkowite przekraczające bezpieczną 53-bitową precyzję mogą utracić dokładność.
Kotwice i aliasy YAML(&, *, <<) są rozwijane do konkretnych wartości po konwersji na JSON; Nie można zachować odniesień, a rozwijanie aliasów ma ograniczenie bezpieczeństwa.
Komentarze YAML, styl cytatu i styl skalarny bloku mogą zostać usunięte lub zregenerowane, ponieważ JSON nie obsługuje tych szczegółów prezentacji.

Prywatność i bezpieczeństwo

Całe przetwarzanie odbywa się lokalnie w Twojej przeglądarce. Tekst JSON/YAML jest wersją roboczą sesji; Preferencje dotyczące wcięć, sortowania, wielu dokumentów, numerów wierszy i zawijania pozostają na tym urządzeniu bez synchronizacji z chmurą, pobierania URL ani zdalnej historii.

Najczęstsze pytania

5

Przejdź do kolejnego kroku z tymi powiązanymi narzędziami.

Całe przetwarzanie narzędzi odbywa się lokalnie w Twojej przeglądarce.