To samo ziarno zawsze daje te same dane.
Sprawdzaj JSON względem schematu, wyciągaj wartości za pomocą JSONPath i twórz realistyczne dane testowe, wszystko w przeglądarce. Nic nie jest przesyłane, więc jest bezpieczne dla prywatnych danych. Jest darmowe i nie wymaga konta.
Jak używać narzędzi JSON
- Otwórz kartę Walidacja, JSONPath lub Dane testowe. Wczytaj przykład pokazuje działający zestaw.
- Walidacja: wklej dane JSON i JSON Schema, naciśnij Uporządkuj oba, aby je sformatować, i przeczytaj wypisane problemy.
- JSONPath: wklej JSON, wpisz wyrażenie JSONPath i przeczytaj wynik. Pokaż ścieżki dodaje położenie każdego dopasowania, a Kopiuj wynik go zabiera.
- Dane testowe: wklej schemat lub przykładowy rekord (albo zamiast tego Wypróbuj przykładowy rekord), ustaw liczbę Rekordów i Ziarno, a potem wybierz Wynik: tablica JSON, NDJSON (po jednym w wierszu) lub CSV.
- Naciśnij Kopiuj lub Pobierz.
Co sprawdza walidator
Podstawowe słowa kluczowe z JSON Schema draft 2020-12 i draft 07: type, properties, required, additionalProperties, patternProperties, items i prefixItems, enum, const, limity liczb i długości, pattern, uniqueItems, contains, oneOf, anyOf, allOf, not, if/then/else oraz $ref do lokalnych definicji, takich jak #/$defs/address. Sprawdzane formaty to email, uri, date, time, date-time, uuid, ipv4, ipv6 i hostname. Każdy problem jest wypisany ze swoją ścieżką, jak $.items[2].price, więc możesz go szybko znaleźć.
JSONPath w skrócie
$ to korzeń, .name wybiera klucz, ..name szuka na dowolnej głębokości, * pasuje do wszystkiego, [0] i [-1] wybierają według pozycji, a [0:3] bierze wycinek. Filtry takie jak [?(@.price < 10)] zachowują elementy, które przechodzą test; możesz porównywać za pomocą ==, !=, <, >, dopasowywać wyrażenie regularne za pomocą =~ /text/i, sprawdzać istnienie klucza za pomocą [?(@.isbn)] i łączyć testy za pomocą && i ||.
Realistyczne dane testowe
Wklej schemat, aby otrzymać rekordy, które go spełniają, z liczbami w Twoim minimum i maksimum, ciągami pasującymi do długości, wzorca i formatu oraz wartościami wybranymi z każdego enum. Wklej zamiast tego przykładowy rekord, a jego kształt zostanie skopiowany. Nazwy pól kierują wartościami, więc email, first_name, city, price, created_at i is_active dostają wiarygodną treść, a e-maile pasują do imion w tym samym rekordzie.
Wskazówki
- Użyj tego samego ziarna, aby znów otrzymać te same dane testowe, co czyni testy powtarzalnymi.
- Gdy walidacja zawodzi, popraw pierwszy błąd i sprawdź ponownie, bo jedna pomyłka może powodować kilka.
- Zacznij od JSONPath
$..name, aby przeszukać duży plik w poszukiwaniu znanego klucza. - Użyj wyniku NDJSON dla narzędzi, które czytają jeden rekord w wierszu.
Kto z tego korzysta
Programiści testujący API, analitycy wyciągający pola z eksportu i uczniowie uczący się JSON. Powiązane narzędzia: JSON na typy, konwerter formatów i porównywanie tekstów.
Pytania
Czy mój JSON jest przesyłany?
Nie. Wszystko działa w Twojej przeglądarce.
Które wersje schematu są obsługiwane?
Draft 2020-12 i draft 07, dla słów kluczowych wymienionych powyżej.
Czy dane testowe są prawdziwe?
Nie. Jest zmyślone, więc bezpiecznie je udostępniać i używać w testach.