Przejdź do treści

Konwerter TOML na JSON

Konwertuj dokument konfiguracyjny TOML na JSON bezpośrednio w przeglądarce.

Wejście
Wynik

Konwerter TOML na JSON

Wklej plik konfiguracyjny TOML i uzyskaj czysty, ustrukturyzowany obiekt JSON — format, jakiego faktycznie oczekuje większość skryptów, interfejsów API i narzędzi do kompilacji. TOML jest ustawieniem domyślnym dla plików konfiguracyjnych Cargo.toml firmy Rust, pyproject.toml, Hugo i niezliczonych aplikacji Pythona właśnie dlatego, że czytanie i pisanie jest łatwe dla ludzi, ale w momencie, gdy konfiguracja musi osiągnąć JavaScript, krok CI lub wywołanie REST, reszta łańcucha narzędzi potrzebuje JSON. Ten konwerter wypełnia tę lukę bez konieczności instalowania parsera lub pisania skryptu.

Parser obejmuje części TOML 1.0, które faktycznie spotkasz w prawdziwej konfiguracji: klucze nagie i w cudzysłowie, klucze z kropkami, takie jak serwer.host, które budują zagnieżdżone obiekty, podstawowe ciągi znaków ze znakami ucieczki i ich wieloliniową formę z potrójnymi cudzysłowami, ciągi literałów dla ścieżek, które nie powinny być zmieniane, liczby całkowite w postaci dziesiętnej, hex, ósemkowej lub binarnej z separatorami podkreślenia, zmiennoprzecinkowe, w tym wykładniki i inf/nan, wartości logiczne, przesunięcie i lokalne daty i godziny, tablice obejmujące wiele linii z końcowymi przecinkami, tabele wbudowane oraz nagłówki [tabela] i [[tablica tabel]] dla powtarzających się bloków, takich jak lista serwerów lub zależności. Komentarze zaczynające się od # są usuwane, dokładnie tak, jak definiuje je TOML.

Wybierz sposób wcięcia JSON — dwie spacje, cztery spacje, tabulatory lub pojedynczą zminimalizowaną linię do wklejenia w innym miejscu — i opcjonalnie posortuj klucze każdego obiektu alfabetycznie, co znacznie ułatwia porównywanie dwóch wersji wygenerowanej konfiguracji. Jeśli w TOML-u występuje problem ze składnią, narzędzie podaje dokładny wiersz i podaje nazwę błędu — niezamknięty ciąg znaków, brakujący znak równości, zduplikowany klucz — zamiast po prostu kończyć się niepowodzeniem.

Wszystko działa lokalnie w Twojej przeglądarce. Nic, co wkleisz, nie zostanie nigdzie przesłane, co ma znaczenie, gdy konfiguracja zawiera hosty baz danych, punkty końcowe API lub inne szczegóły, których wolisz nie wysyłać na serwer tylko w celu ponownego sformatowania pliku.

Częste pytania

Które części TOML-a to obsługuje?
Praktyczny podzbiór 1.0: klucze (puste, cudzysłowowe, kropkowane), ciągi znaków podstawowe i literałowe, w tym formy wielowierszowe, liczby całkowite w formacie dziesiętnym/hex/ósemkowym/binarnym, liczby zmiennoprzecinkowe z wykładnikami i inf/nan, wartości logiczne, daty i godziny, tablice, tabele wbudowane, nagłówki [tabela] i [[tablica tabel]] oraz # komentarze.
Co się dzieje z datami i godzinami?
TOML ma rzeczywiste typy daty i godziny, których nie ma w JSON, więc są przechowywane dokładnie tak, jak zostały zapisane — jako ciągi JSON, takie jak „1979-05-27T07:32:00Z” — zamiast być zgadywane w coś innego.
W jaki sposób konwertowane są bloki [[tablica tabel]]?
Każdy nagłówek [[name]] dołącza nowy obiekt do tablicy pod tym kluczem, więc powtarzające się bloki – lista zależności, serwerów lub owoców – stają się tablicą JSON obiektów w kolejności, w jakiej się pojawiają.
Co robi, gdy TOML popełni błąd?
Podaje numer linii i krótki powód — niezamknięty ciąg znaków, brakujący znak „=”, klucz zdefiniowany dwukrotnie — zamiast zwracać pusty lub częściowo przekonwertowany wynik.
Czy mój plik konfiguracyjny jest gdzieś przesłany?
Nie. Konwersja odbywa się całkowicie w przeglądarce, a wklejony plik TOML nigdy nie opuszcza urządzenia – jest bezpieczny dla konfiguracji zawierających dane uwierzytelniające lub wewnętrzne nazwy hostów.