JSON-validator
Klistra in valfritt JSON-dokument och se om det tolkas korrekt enligt RFC 8259. Ogiltig indata kommer tillbaka med det exakta problemet, avslutande kommatecken efter sista arrayelementet, nyckel utan citattecken, oavslutad sträng, enkla citattecken där JSON kräver dubbla, felaktiga escape-sekvenser, plus raden och kolumnen där parsern gav upp. Användbart när du felsöker ett API-svar, en konfigurationsfil, en package.json som en kollega handredigerat eller utdata från en kodgenerator.
Så fungerar JSON-validering
-
1
Klistra in din JSON
Släpp in en payload, en konfigurationsfil eller ett API-svar. Blanksteg går bra; tabbar och kommentarer gör det inte (ren JSON har inga kommentarer).
-
2
Tolka med en strikt RFC 8259-parser
Validatorn avvisar allt som specifikationen förbjuder: avslutande kommatecken, nycklar utan citattecken, enkla citattecken, `undefined`, hex-tal.
-
3
Läs felet
Om det misslyckas får du parserns meddelande plus en ungefärlig position: tillräckligt för att navigera direkt till tecknet.
-
4
Åtgärda och validera igen
Rätta till problemet, klistra in på nytt och bekräfta att dokumentet är giltigt innan du committar eller skickar.
Vad strikt JSON tillåter, och vad det inte gör
Det florerar en hel del “nästan-JSON”-format (JSON5, JSONC, HJSON, YAML-liknande hybrider). Själva JSON-specifikationen är liten och strikt; denna validator talar om för dig om ditt dokument överlever en strikt parser, vilket är vad de flesta nedströmssystem faktiskt kör.
Regler som de flesta snubblar på
| Regel | Giltigt | Ogiltigt |
|---|---|---|
| Nycklar måste vara strängar med dubbla citattecken | {"a": 1} |
{a: 1} |
| Strängar använder bara dubbla citattecken | "hello" |
'hello' |
| Inga avslutande kommatecken | [1, 2, 3] |
[1, 2, 3,] |
| Inga kommentarer | (inga) | // comment eller /* */ |
Tal: inget inledande +, inget .5 |
0.5 |
+1, .5 |
| Endast reserverade literaler | true, false, null |
undefined, NaN |
| UTF-8-kodning | Unicode-strängar | Ogiltiga bytesekvenser |
Vanliga fel och vad de betyder
- “Unexpected token
}”, du har ett avslutande kommatecken före den stängande klammern. - “Expected property name”, nyckeln saknar citattecken eller så glömde du citattecknen runt den inledande nyckeln.
- “Unexpected end of input”, en inledande
{eller[är inte stängd; räkna klamrarna. - “Bad control character”, en tabb, radbrytning eller annan styrbyte inuti en strängliteral. Escapa dem som
\t,\n, osv. - “Duplicate key”, egentligen inte ett fel enligt JSON-specifikationen (specifikationen säger BÖR vara unika), men många validatorer varnar. Validatorn flaggar det som en notis, inte ett hårt fel.
Om du behöver mindre strikta format
- JSON5 tillåter avslutande kommatecken, kommentarer och enkla citattecken. Använd en JSON5-parser om det är ditt målformat.
- JSONC (JSON med kommentarer) är vad VS Codes inställningar använder. Ta bort kommentarer före strikt tolkning.
- YAML är ett annat format; anta inte att det är “bara indenterad JSON”.
Tips
- Validera innan du committar. Ett stavfel i en
package.jsoneller en CI-konfiguration bryter hela bygget tills någon märker det. - Snyggformatera efter validering för att göra granskningsdiffar läsbara. En JSON-fil på en rad är giltig men eländig att granska.
- För stora payloads, strömvalidera (
jqpå kommandoraden, till exempel). Tolkning i webbläsaren kämpar förbi några MB.
Vanliga frågor
Det här verktyget kontrollerar endast syntaktisk giltighet, är det välformad JSON? För strukturella regler (obligatoriska fält, enum-värden, stränglängder) använder du en JSON Schema-validator. De två stegen kompletterar varandra: ingen idé att köra Schema-validering på ett dokument som inte ens är giltig JSON till att börja med.
Eftersom standard-JSON inte har några kommentarer. // och /* */ är en förnuftig utökning (JSONC, JSON5) men ren JSON avvisar dem. Ta bort kommentarer innan du skickar till en strikt konsument, eller inför JSON5 i hela din stack.
Ogiltiga i strikt JSON. Specifikationen tillåter endast ändliga tal. Serialisera dem som strängar ("NaN", "Infinity") eller som null, beroende på hur din konsument hanterar saknad data.
Nej, valideringen körs i din webbläsare, så den payload du klistrar in lämnar aldrig sidan. Säkert för känsliga konfigurationsfiler och API-svar med autentiseringsuppgifter.
Relaterade verktyg
ASCII-tabellreferens
Full ASCII-tabell från 0 till 127 med decimal-, hex-, oktal- och binärvärden samt notation för numeriska HTML-referenser, inklusive NUL, LF och DEL.
HTML-teckenreferens
En sökbar lista över HTML-entiteter med deras namngivna och numeriska koder samt kopiering med ett klick för specialtecken och symboler.
Referens för kortkommandon
Sök dokumenterade standardkommandon för VS Code, Chrome och Bash med GNU Readline i macOS, Windows och Linux.
HTML-formaterare
Formatera HTML lokalt i webbläsaren med indrag på två eller fyra blanksteg. HTML laddas inte upp eller valideras.
E-postvalidator
Validera en e-postadress: RFC 5322-syntaxkontroll, live-slagning av MX-poster samt detaljer om lokal del, domän och längd. Ingen e-post skickas.
EditorConfig-generator
Generera en .editorconfig-fil med dina regler för indragsstil och -storlek, radslut, teckenuppsättning och blanksteg för enhetlig formatering i alla IDE:er och editorer.
Verktyget finns på andra språk
- Trình kiểm tra JSON [VI]
- Validador JSON [ES]
- Validador JSON [PT]
- مدقّق JSON [AR]
- JSONバリデーター [JA]
- ตัวตรวจสอบความถูกต้องของ JSON [TH]
- JSON-Validator [DE]
- JSON 검사기 [KO]
- JSON-validator [NL]
- Validateur JSON [FR]
- JSON Validator [ID]
- Walidator JSON [PL]
- JSON 校验器 [ZH]
- JSON Validator [EN]
- Validator JSON [IT]
- Валидатор JSON [RU]
- JSON Doğrulayıcı [TR]