tigtools

JSON-Validator

Fügen Sie JSON ein, um die Syntax anhand des JSON-Standards zu prüfen. Fehler werden mit einer Markierung und einer verständlichen Erklärung hervorgehoben.

Läuft in Ihrem Browser Keine Anmeldung erforderlich

Das Ergebnis wird hier angezeigt, sobald Sie JSON einfügen.

Anleitung

  1. Fügen Sie Ihr JSON in das Feld ein, öffnen Sie eine Datei oder klicken Sie auf „Beispiel ausprobieren“, um einen Fehlerbericht anzuzeigen.
  2. Lesen Sie das Ergebnis: Bei gültigem JSON erscheint eine grüne Meldung. Andernfalls wird der erste Fehler mit Zeile, Spalte und einer Markierung unter der fehlerhaften Stelle angezeigt.
  3. Beheben Sie den im Hinweis beschriebenen Fehler und prüfen Sie das JSON erneut. Das Ergebnis wird während der Eingabe aktualisiert.
  4. Bei gültigem JSON können Sie die Statistiken ablesen: Wurzeltyp, Anzahl der Schlüssel, Verschachtelungstiefe und Größe in Byte.

So funktioniert es

Der Validator prüft die Syntax anhand des JSON-Standards (RFC 8259 / ECMA-404) mit dem integrierten JSON-Parser des Browsers. Ein Dokument, das diese Prüfung besteht, wird daher von JavaScripts JSON.parse und standardkonformen Parsern in anderen Sprachen akzeptiert. Schlägt das Parsen fehl, durchsucht ein strenger, speziell für dieses Tool entwickelter Prüfer den Text einmal, um den ersten Fehler und seine genaue Zeilen- und Spaltenposition zu finden. Anschließend zeigt er die betreffende Zeile mit einem ^-Marker unter der fehlerhaften Stelle an.

Die Hinweise konzentrieren sich auf typische Fehler beim manuellen Schreiben oder Kopieren von JSON aus JavaScript: ein Komma nach dem letzten Element, Strings in einfachen Anführungszeichen, Schlüssel ohne Anführungszeichen, //- oder /* */-Kommentare, Werte wie NaN, Infinity oder undefined, unverarbeitete Zeilenumbrüche in Strings sowie zwei direkt hintereinander eingefügte JSON-Dokumente (wie in JSON-Lines-Dateien). Es wird nur der erste Fehler gemeldet, da ein einzelner Fehler häufig alles Folgende durcheinanderbringt.

Das Tool prüft nur die Syntax. Es validiert nicht anhand eines JSON-Schemas und kann daher nicht feststellen, ob ein Pflichtfeld fehlt. Auch vor doppelten Schlüsseln wird nicht gewarnt: Der Standard lässt sie zu und die meisten Parser behalten den letzten Wert bei. Die Statistiken zählen Schlüssel in allen Objekten auf jeder Ebene. Die Tiefe beträgt bei einem einfachen Objekt oder Array 1 und erhöht sich mit jeder Verschachtelungsebene um 1.

Beispiele

Aus JavaScript kopierte Konfiguration

{name: 'demo', debug: true,} schlägt in Zeile 1, Spalte 2 mit „Objektschlüssel müssen in doppelte Anführungszeichen gesetzt werden“ fehl. Nachdem der Schlüssel in Anführungszeichen gesetzt wurde, verweist der nächste Prüflauf auf den String in einfachen Anführungszeichen und danach auf das überflüssige Komma.

Logdatei mit einem Objekt pro Zeile

Wer zwei Zeilen wie {"id":1} und {"id":2} einfügt, erhält in Zeile 2 den Fehler „Nach dem Ende des JSON-Werts folgen weitere Inhalte“. Jede Zeile ist für sich gültiges JSON (JSON Lines). Zusammen müssen sie jedoch in [ ] eingeschlossen und durch ein Komma getrennt werden.

API-Payload prüfen

Eine 2 MB große Antwort wird sofort validiert. Das Ergebnis zeigt „Wurzeltyp: Array“, 1.500 Elemente auf oberster Ebene und eine Verschachtelungstiefe von 4 – eine schnelle Plausibilitätsprüfung, bevor Sie Code dafür schreiben.

Häufig gestellte Fragen

Prüft das Tool die Daten anhand eines JSON-Schemas?

Nein. Das Tool prüft, ob der Text syntaktisch gültiges JSON ist. Um Pflichtfelder, Datentypen oder Formate zu prüfen, benötigen Sie einen JSON-Schema-Validator, den dieses Tool nicht enthält.

Warum wird nur ein Fehler angezeigt?

Nach dem ersten Syntaxfehler kann ein Parser nicht wissen, was gemeint war. Spätere „Fehler“ sind daher oft Folgen des ersten. Beheben Sie das gemeldete Problem. Ein möglicher nächster Fehler wird sofort angezeigt.

Sind Kommentare oder abschließende Kommas jemals gültig?

Nein, nicht in JSON. Formate wie JSON5 und JSONC (die manche Editoren für Einstellungsdateien verwenden) erlauben sie. Standard-JSON-Parser lehnen sie jedoch ab und melden sie deshalb hier als Fehler.

Ist ein einzelner Wert wie 42 oder „hello“ gültiges JSON?

Ja. Seit RFC 7159 kann jeder JSON-Wert an der Wurzel stehen, nicht nur Objekte und Arrays. Einige ältere Tools und APIs erwarten auf der obersten Ebene dennoch ein Objekt oder Array.

Warum kann die Spaltenangabe von der in meinem Editor abweichen?

Spalten werden in UTF-16-Codeeinheiten gezählt, so wie JavaScript die Länge von Zeichenfolgen zählt. Emojis und einige seltene Zeichen zählen als zwei Zeichen. Ein Tab zählt als eine Spalte, auch wenn Editoren ihn möglicherweise breiter anzeigen.

Datenschutz

Die Prüfung erfolgt vollständig in Ihrem Browser. Das eingefügte oder geöffnete JSON wird weder hochgeladen noch gespeichert oder in Analysen erfasst.