Playground

Sprawdź JSON względem JSON Schema – bezpośrednio w przeglądarce

Wklej schemat i ładunek JSON, wybierz preset i zobacz, które słowa kluczowe przechodzą, a które nie. Napędzane przez Ajv z ajv-formats – nic nie opuszcza Twojej karty.

  • Tylko po stronie przeglądarki
  • JSON Schema draft-07
  • ajv-formats w komplecie

Po co walidować JSON Schemą

JSON Schema opisuje kształt dokumentu JSON – pola wymagane, typy, enumeracje, formaty i kombinacje typu oneOf. Walidacja zmienia dokumentację API w automatyczny, sprawdzalny maszynowo kontrakt.

Ta strona nigdy nie wysyła Twojego schematu ani danych w świat. Walidacja działa wewnątrz przeglądarki przy użyciu Ajv kompilowanego do JavaScriptu w czasie wykonania.

Kiedy Ajv jest przydatny

  • Egzekwowanie kontraktów request/response na brzegu i pomiędzy mikroserwisami.
  • Obsługa złożonej walidacji formularzy bez rozsiewania ad-hoc if/else po kodzie.
  • Walidacja plików konfiguracyjnych (CI, infra, flagi) zanim trafią na produkcję.
  • Bramkowanie pipeline'ów danych – zniekształcone rekordy odpadają szybko z jasnym, strukturalnym błędem.

Wypróbuj

Edytuj schemat lub dane, kliknij Waliduj i przejrzyj uporządkowaną listę błędów poniżej.

Schemat

Musi być poprawnym dokumentem JSON Schema (domyślnie draft-07).

Dane

Wartość JSON, którą chcesz zwalidować względem schematu powyżej.

Kliknij Waliduj, aby uruchomić Ajv na powyższych danych.

FAQ

Czy ta strona wysyła mój schemat lub dane na serwer?
Nie. Walidacja działa w przeglądarce z użyciem Ajv. Po załadowaniu strona działa offline, a Twoje dane nie opuszczają karty.
Z którego draftu JSON Schema korzysta playground?
Ajv używa tutaj domyślnie draftu 7. Schematy z $schema wskazującym nowszy draft nadal walidują instancję, ale słowa kluczowe specyficzne dla draftu mogą wymagać innej wersji Ajv.
Dlaczego widzę kilka błędów na to samo pole?
Ajv jest skonfigurowany z allErrors: true, dzięki czemu raportuje wszystkie naruszenia, a nie zatrzymuje się na pierwszym. Łatwiej zobaczyć pełen obraz przed poprawą danych.
Jak sprawdzane są formaty takie jak email czy uuid?
Formaty dostarcza paczka ajv-formats, ładowana razem z Ajv. Wspiera m.in. email, uri, uuid, date, date-time, ipv4, ipv6 i regex.

Warto pamiętać

  • $ref do zdalnych schematów nie jest ładowany przez playground – trzymaj schematy samodzielne lub wklejaj definicje inline.
  • oneOf i anyOf potrafią wygenerować wiele błędów naraz, bo Ajv raportuje każdą gałąź, która zawiodła – czytaj listę od góry.
  • Formaty są w JSON Schema doradcze; ajv-formats włącza je twardo, a niestandardowe formaty wymagają osobnej rejestracji.
  • Duże schematy są tu kompilowane przy każdym kliknięciu Waliduj dla prostoty – w produkcji warto cache'ować skompilowany walidator.

Jak Ajv wypada na tle innych walidatorów

BibliotekaWspierane draftyRuntimeUwagi
AjvDraft 7 / 2019-09 / 2020-12Przeglądarka i NodeSzybkie, JIT-kompilowane walidatory, dojrzały ekosystem, dodatki ajv-formats i ajv-keywords.
jsonschema (Python)Draft 4 → 2020-12Tylko serwerReferencyjna implementacja w Pythonie, wolniejsza od Ajv, łatwa do wpięcia w pipeline'y w Pythonie.
JSON Schema Validator (Java)Draft 4 → 2020-12JVMPopularna w backendach Java, obsługuje wiele draftów, ale kompiluje się wolniej niż Ajv przy podobnych schematach.