Viktigste punkter
- 01Drevet av Ajv, det mest brukte JavaScript JSON Schema-validatoren — det som passerer her passerer i Node.js, Fastify og de fleste JS-verktøykjeder.
- 02Rapporterer hver valideringsfeil på en gang (allErrors-modus), ikke bare den første feilen.
- 03Hver feil inkluderer JSON Pointer-banen til det mislykket feltet for rask navigasjon.
- 04Både skjema og data kjøres helt i nettleseren — ingenting lastes opp.
Hvorfor validere JSON mot et skjema?
JSON Schema er standardmåten å beskrive formen på et JSON-dokument — påkrevd felt, tillatte typer, verdibegrensninger, nestet objektstrukturer. Validering mot et skjema før en nyttelast når produksjon fanger typefeilen, manglende påkrevd felt og begrensningsovertredelser tidlig, når de er billige å fikse.
De vanligste brukstilfellene er testAPI-forespørsels- og svarlegemer, validering av konfigurasjonsfiler, kontroll av OpenAPI-eksemelobjekter og verifisering av dataeksporter mot en kjent struktur. Handytool's validator bruker Ajv — de facto JavaScript JSON Schema-biblioteket, brukt inni Node.js selv — så resultatene her samsvarer med det backend-appen din vil se.
Hvordan validere JSON mot et skjema
- 01
Lim inn JSON-skjemaet ditt
Lim inn skjemaet i det venstre panelet. Dette kan være et Draft 7- eller 2019-09- eller 2020-12-skjema med type, egenskaper, påkrevd, elementer, anyOf, allOf — noe som helst standard Ajv-støttet nøkkelord.
- 02
Lim inn JSON-dataene dine
Lim inn datadokumentet du vil validere i det høyre panelet. Dette er instansen — en API-forespørselskropp, en konfigurasjonsobjekt, en eksport-post eller et enkelt eksempel fra OpenAPI-spesifikasjonen.
- 03
Klikk Valider
Ajv kjører validering med allErrors: true, noe som betyr at det samler hver feil i stedet for å stoppe ved den første.
- 04
Gå gjennom feilerlisten
Hver feil viser JSON Pointer-banen til den mislykket verdien (f.eks. /user/email), det mislykket nøkkelordet (type, påkrevd, minimum) og en menneskelig lesbar melding. Fiks hver og revalidater.
Hva utviklere validerer med JSON Schema
- 01REST API-forespørselskropper — bekreft at en nyttelast samsvarer med sluttspunktet som forventer form før du sender.
- 02OpenAPI spec-eksemelobjekter — valider hvert eksempel mot inline-skjemakomponenten.
- 03Konfigurasjonsfiler — sikre påkrevd nøkler er til stede og verdier er riktig type.
- 04Data pipeline-poster — spot strukturell drift mellom dataprodusenter og forbrukere.
- 05Formskjemainnleveringsnyttelaster — test at frontend-validering speiler backend-skjemabegrensningene.
- 06Tredjepartswebhook-kropper — bekreft at det dokumentert skjemaet samsvarer med den faktiske nyttelast.
Privat validering, ingen server påkrevd
Ajv kjøres helt i nettleseren. Verken skjemaet eller dataene sendes til noen server — du kan trygt validere skjemaer som beskriver interne datastrukturer og dataobjekter som inneholder sensitive feltverdier.
Validatoren støtter JSON Schema drafter 6, 7, 2019-09 og 2020-12. Den vanligste draften i jungelen er Draft 7, som dekker alle hverdagsnøkkelord: type, egenskaper, påkrevd, elementer, minimum, maksimum, mønster, enum, anyOf, allOf, oneOf, ikke og $ref.
JSON Schema Validator FAQ
Hvilke JSON Schema-drafter støttes?
Ajv støtter drafter 6, 7, 2019-09 og 2020-12. Draft 7 er den vanligste i eksisterende kodebaser og dekker alle standardnøkkelord.
Hvorfor løser ikke $ref-skjemaet mitt?
Eksterne $ref-URLer hentes ikke i dette nettleseren verktøyet. Inline alle refererte skjemaer ved hjelp av $defs og lokale JSON-pekerere som #/$defs/MyType.
Blir skjemaet eller dataene mine lastet opp til noen server?
Nei. Ajv kjøres helt i nettleseren — både skjema og data forblir på enheten din.
Kan jeg bruke dette til å validere en OpenAPI 3-spec?
Du kan validere individuelle skjemakomponenter og eksemelobjekter. Validering av hele OpenAPI-dokumentet krever en dedikert OpenAPI-validator som forstår spec-metaskjemaet.
Hvorfor ser jeg flere feil i stedet for bare den første?
Validatoren er konfigurert med allErrors: true, noe som gjør Ajv samler hver feil i stedet for å stoppe ved den første. Dette er intensjonalt — du kan fikse alle problemer på en gang i stedet for å gjøre gjentatte valideringsforsøk.