JSON-validator
Plak een willekeurig JSON-document en zie of het netjes parset volgens RFC 8259. Ongeldige invoer komt terug met het exacte probleem, afsluitende komma na het laatste array-item, key zonder aanhalingstekens, niet-afgesloten string, enkele aanhalingstekens waar JSON dubbele eist, foute escape-sequences, plus de regel en kolom waar de parser het opgaf. Handig bij het debuggen van een API-respons, een configbestand, een package.json die een teamgenoot met de hand heeft bewerkt of de output van een code-generator.
Zo werkt JSON-validatie
-
1
Plak je JSON
Zet er een payload, een configbestand of een API-respons in. Witruimte is prima; tabs en comments niet (pure JSON heeft geen comments).
-
2
Parse met een strikte RFC 8259-parser
De validator weigert alles wat de spec verbiedt: afsluitende komma's, keys zonder aanhalingstekens, enkele aanhalingstekens, `undefined`, hexgetallen.
-
3
Lees de fout
Als het misgaat, krijg je de melding van de parser plus een geschatte locatie: genoeg om direct naar het teken te navigeren.
-
4
Repareer en hervalideer
Los het probleem op, plak opnieuw en bevestig dat het document geldig is voordat je commit of verstuurt.
Wat strikte JSON toestaat, en wat niet
Er zweven veel “bijna-JSON”-formaten rond (JSON5, JSONC, HJSON, YAML-achtige hybrides). De JSON-spec zelf is klein en strikt; deze validator vertelt je of je document een strikte parser overleeft, en dat is wat de meeste downstream-systemen daadwerkelijk draaien.
Regels waar de meeste mensen op vastlopen
| Regel | Geldig | Ongeldig |
|---|---|---|
| Keys moeten dubbele-quote strings zijn | {"a": 1} |
{a: 1} |
| Strings gebruiken alleen dubbele aanhalingstekens | "hello" |
'hello' |
| Geen afsluitende komma’s | [1, 2, 3] |
[1, 2, 3,] |
| Geen comments | (geen) | // comment of /* */ |
Getallen: geen voorloop-+, geen .5 |
0.5 |
+1, .5 |
| Alleen gereserveerde literals | true, false, null |
undefined, NaN |
| UTF-8-codering | Unicode-strings | Ongeldige bytereeksen |
Veelvoorkomende fouten en wat ze betekenen
- “Unexpected token
}”, je hebt een afsluitende komma vóór de sluitende accolade. - “Expected property name”, de key staat niet tussen aanhalingstekens, of je bent de aanhalingstekens rond de openingskey vergeten.
- “Unexpected end of input”, een openende
{of[is niet afgesloten; tel de accolades. - “Bad control character”, een tab, newline of ander control-byte binnen een string-literal. Escape ze als
\t,\n, enzovoort. - “Duplicate key”, eigenlijk geen JSON-spec-fout (de spec zegt dat keys uniek SHOULD zijn), maar veel validators waarschuwen ervoor. De validator markeert het als een notice, niet als een harde fout.
Als je laksere formaten nodig hebt
- JSON5 staat afsluitende komma’s, comments en enkele aanhalingstekens toe. Gebruik een JSON5-parser als dat je doelformaat is.
- JSONC (JSON met comments) gebruiken de VS Code-instellingen. Verwijder comments vóór het strikte parsen.
- YAML is een ander formaat; ga er niet vanuit dat het “gewoon ingesprongen JSON” is.
Tips
- Valideer voor het committen. Een typfout in een
package.jsonof een CI-config breekt de hele build totdat iemand het opmerkt. - Pretty-print na het valideren zodat review-diffs leesbaar zijn. Een JSON-bestand op één regel is geldig maar ellendig om te reviewen.
- Voor grote payloads, valideer streamend (
jqop de command line, bijvoorbeeld). In-browser parsen worstelt voorbij een paar MB.
Veelgestelde vragen
Deze tool controleert alleen de syntactische geldigheid, is het well-formed JSON? Voor structurele regels (verplichte velden, enum-waarden, stringlengtes) gebruik je een JSON Schema-validator. De twee stappen vullen elkaar aan: het heeft geen zin om Schema-validatie te draaien op een document dat niet eens geldige JSON is.
Omdat standaard-JSON geen comments heeft. // en /* */ zijn een gezond-verstand-uitbreiding (JSONC, JSON5), maar pure JSON weigert ze. Verwijder comments voordat je naar een strikte consumer stuurt, of stap over op JSON5 in je hele stack.
Ongeldig in strikte JSON. De spec staat alleen eindige getallen toe. Serialiseer ze als strings ("NaN", "Infinity") of als null, afhankelijk van hoe je consumer met ontbrekende data omgaat.
Nee, de validatie draait in je browser, dus de payload die je plakt verlaat de pagina nooit. Veilig voor gevoelige configbestanden en API-responsen met inloggegevens.
Gerelateerde tools
ASCII-tabelreferentie
Volledige ASCII-tabel van 0 tot 127 met decimale, hexadecimale, octale en binaire waarden en HTML-numerieke referentienotatie, inclusief control codes zoals NUL, LF en DEL.
HTML-tekenreferentie
Een doorzoekbare lijst met HTML-entiteiten, hun benoemde en numerieke codes, plus kopiëren met één klik voor speciale tekens en symbolen.
Sneltoetsenoverzicht
Zoek gedocumenteerde standaardsneltoetsen voor VS Code, Chrome en Bash met GNU Readline op macOS, Windows en Linux.
E-mailvalidator
Valideer een e-mailadres: RFC 5322-syntaxcontrole, live MX-record-zoekopdracht, plus details over lokaal deel, domein en lengte. Er wordt geen e-mail verstuurd.
EditorConfig-generator
Genereer een .editorconfig-bestand met uw regels voor inspringstijl en -grootte, regeleinde, tekenset en witruimte voor consistente opmaak in alle IDE's en editors.
HTML-opmaker
Formatteer HTML lokaal in de browser met twee of vier spaties inspringing. HTML wordt niet geüpload of gevalideerd.
Tool beschikbaar in andere talen
- JSONバリデーター [JA]
- Trình kiểm tra JSON [VI]
- Validador JSON [ES]
- مدقّق JSON [AR]
- Validateur JSON [FR]
- Validador JSON [PT]
- JSON Validator [ID]
- JSON-validator [SV]
- ตัวตรวจสอบความถูกต้องของ JSON [TH]
- JSON 검사기 [KO]
- JSON-Validator [DE]
- Walidator JSON [PL]
- JSON Validator [EN]
- Validator JSON [IT]
- Валидатор JSON [RU]
- JSON Doğrulayıcı [TR]
- JSON 校验器 [ZH]