Wie Sie JSON online formatieren und validieren

· 7 Min. Lesezeit

Wenn Sie mit APIs, Konfigurationsdateien oder jeder Art strukturierter Daten arbeiten, haben Sie regelmäßig mit JSON zu tun. Und wenn Sie jemals auf eine Wand minifizierten JSON gestarrt haben, um eine fehlende Klammer zu finden, wissen Sie, warum Formatierung wichtig ist. Ein browserbasierter Formatierer erledigt die gesamte Arbeit lokal, ohne Ihre Daten auf einen Server hochzuladen.

Was JSON-Formatierung macht

Rohes JSON aus einer API-Antwort oder einer minifizierten Datei sieht so aus:

{"users":[{"name":"Alice","age":30,"roles":["admin","editor"]},{"name":"Bob","age":25,"roles":["viewer"]}]}

Ein Formatierer verwandelt es in etwas Lesbares:

{
  "users": [
    {
      "name": "Alice",
      "age": 30,
      "roles": ["admin", "editor"]
    },
    {
      "name": "Bob",
      "age": 25,
      "roles": ["viewer"]
    }
  ]
}

Dieselben Daten, aber jetzt können Sie sie wirklich lesen, Fehler erkennen und die Struktur verstehen.

So formatieren Sie JSON online

  1. Fügen Sie Ihr JSON ein in das Eingabefeld. Der Formatierer wird sofort Syntaxfehler erkennen und die Struktur validieren.
  2. Wählen Sie Ihre Einrückung: Wählen Sie 2 oder 4 Leerzeichen oder klicken Sie auf Minify, um das JSON in eine einzige Zeile zu komprimieren.
  3. Kopieren Sie das Ergebnis: Die formatierte Ausgabe enthält farbcodierte Syntax-Hervorhebung. Kopieren Sie es, um es in Ihrem Code, Ihrer Konfigurationsdatei oder Ihrer Dokumentation zu verwenden.

Eine kurze Geschichte von JSON

JSON (JavaScript Object Notation) wurde 2001 von Douglas Crockford spezifiziert, 2006 formal in RFC 4627 dokumentiert und 2013 als ECMA-404 und 2017 als ISO/IEC 21778 standardisiert. Crockford hat JSON nicht erfunden: Er extrahierte es aus einer Teilmenge der JavaScript-Objektliteral-Syntax, die bereits in Verwendung war, und gab ihm einen Namen plus eine einseitige Spezifikation auf json.org.

JSON verdrängte schnell XML für Web-APIs, weil es dramatisch einfacher ist. Eine XML-Antwort ist mit Öffnungs-/Schließtags ausführlich; das entsprechende JSON ist halb so groß. Browser können JSON nativ parsen (JSON.parse, JSON.stringify seit ECMAScript 5 im Jahr 2009) ohne XML-Parser erforderlich.

Bis 2015 sprach jede große API der Welt JSON: REST-APIs, GraphQL-Abfragen, WebSocket-Nachrichten, Konfigurationsdateien (package.json, tsconfig.json, .vscode/settings.json) und sogar Datenbanken (PostgreSQL JSONB, MongoDB BSON, das JSON-ähnlich ist). Es wurde zur Lingua Franca strukturierter Daten im Web.

Die Einfachheit von JSON ist auch seine Einschränkung: keine Kommentare, keine nachgestellten Kommas, kein Datumstyp, keine binäre Unterstützung. Mehrere JSON-Varianten entstanden, um diese Lücken zu schließen (siehe «Alternative JSON-ähnliche Formate» unten).

Häufige JSON-Fehler und wie man sie erkennt

Die meisten JSON-Fehler laufen auf einige häufige Fehler hinaus:

Ein guter Formatierer hebt genau hervor, wo der Fehler liegt, sodass Sie ihn sofort beheben können, anstatt zu raten.

JSON-Datentypen

JSON hat genau 6 Datentypen:

TypBeispielNotizen
String"hello"Immer doppelte Anführungszeichen, unterstützt \n, \t, \\, \", \uXXXX
Zahl42, 3.14, -1e10Keine NaN oder Infinity, keine führenden Nullen
Booleschtrue, falseNur Kleinbuchstaben
nullnullNur Kleinbuchstaben
Array[1, 2, 3]Geordnet, beliebige Typen, kommagetrennt
Objekt{"key": "value"}Schlüssel müssen zitierte Strings sein, kommagetrennt

Bemerkenswerterweise fehlen: Daten (verwenden Sie ISO 8601 Strings), Binärdaten (verwenden Sie Base64 Strings), Kommentare (verwenden Sie ein separates Dokumentationsfeld) und bigint (JSON-Zahlen sind doppelte Präzision; Werte >= 2^53 verlieren Präzision).

Wann formatieren vs minifizieren

Formatieren (pretty-print), wenn Sie:

Minifizieren, wenn Sie:

Der Größenunterschied ist erheblich: Ein typisches 50 KB pretty-printed JSON minifiziert auf etwa 30 KB. Für hochfrequente APIs sparen minifizierte Antworten Bandbreite. Für von Menschen bearbeitete Dateien ist formatiert unerlässlich.

Alternative JSON-ähnliche Formate

Wenn die Strenge von JSON ein Problem ist, lockern mehrere Varianten die Regeln:

FormatFügt zu JSON hinzuBeste Verwendung
JSON5Kommentare, nachgestellte Kommas, einfache Anführungszeichen, nicht zitierte SchlüsselKonfigurationsdateien, in denen Menschen bearbeiten
JSONCNur Kommentare (// und /* */)VS Code-Einstellungen, tsconfig.json
HJSONKommentare, nicht zitierte Strings, mehrzeilige StringsMenschenfreundliche Konfigurationen
JSON Lines (NDJSON)Ein JSON-Objekt pro Zeile, kein umschließendes ArrayLogdateien, Streaming
YAMLAuf Einrückung basierend, Kommentare, Anker, ReferenzenKubernetes, GitHub Actions
TOMLINI-ähnliche Syntax, Daten, KommentareCargo.toml, pyproject.toml
BSONBinäres JSON mit zusätzlichen Typen (Date, ObjectId, Binary)MongoDB interne Speicherung
CBOR (RFC 8949)Binärformat optimiert für GrößeAPIs für eingeschränkte Geräte
MessagePackBinäres JSON-ähnliches, kompaktInterne API-Serialisierung

Für Datenaustausch (API-Antworten, Konfiguration) bleiben Sie bei striktem JSON. Für menschenbearbeitete Konfiguration sind JSON5 oder JSONC freundlicher. Für Datenstreaming ist NDJSON der De-facto-Standard.

Häufige Stolperfallen

Tipps für die Arbeit mit JSON

Datenschutz und vertrauliche JSON

Der JSON-Formatierer läuft vollständig in Ihrem Browser. Das JSON, das Sie einfügen, die Zwischenverarbeitung und die formatierte Ausgabe bleiben alle auf Ihrem Gerät. Nichts wird auf einen Server hochgeladen, protokolliert oder mit irgendjemandem geteilt.

Dies ist wichtig, weil JSON oft extrem sensible Daten enthält: API-Antworten mit Kundenakten und E-Mail-Adressen, Authentifizierungstoken und Sitzungsdaten, interne API-Schemata, die die Produktarchitektur enthüllen, Konfigurationsdateien mit Datenbankpasswörtern, Finanzdaten aus Buchhaltungs-APIs, medizinische Aufzeichnungen aus FHIR-APIs, interne Unternehmensstruktur aus HR-APIs, Debug-Payloads mit Stacktraces, die die Infrastruktur offenlegen. Cloud-JSON-Formatierer protokollieren jedes Einfügen in ihren Anfrageprotokollen, behalten sie manchmal zur «Service-Verbesserung» und waren an echten Vorfällen beteiligt, bei denen eingefügte API-Antworten Kundendaten und API-Schlüssel preisgaben. Ein browserbasierter Formatierer hat null Exposition: Das JSON verlässt niemals Ihren Computer.

Browserbasierte Formatierung funktioniert auch offline, sobald die Seite geladen ist, nützlich für die Formatierung von JSON in Flugzeugen, in sicheren Umgebungen ohne Internetzugang oder überall dort, wo Sie API-Daten (besonders mit eingebetteten Anmeldeinformationen) nicht in einen Drittanbieterdienst einfügen können oder sollten.

Häufig gestellte Fragen

Kann der Formatter große JSON-Dateien verarbeiten?

Ja. Da das Tool in Ihrem Browser läuft, kann es Dateien mit Zehntausenden von Zeilen verarbeiten. Die Performance hängt von Ihrem Gerät ab, aber die meisten modernen Browser bewältigen großes JSON ohne Probleme.

Funktioniert das offline?

Ja. Sobald die Seite geladen ist, funktioniert das Tool vollständig in Ihrem Browser ohne Internetverbindung. Die gesamte Verarbeitung erfolgt lokal in JavaScript.

Was ist der Unterschied zwischen Formatieren und Validieren?

Das Formatieren fügt korrekte Einrückung und Zeilenumbrüche hinzu, um JSON lesbar zu machen. Das Validieren prüft, ob die JSON-Struktur korrekt ist, passende Klammern, korrekte Anführungszeichen, gültige Datentypen. Die meisten Formatter erledigen beides gleichzeitig.

Kann ich das auf meinem Telefon nutzen?

Ja. Das Tool funktioniert auf jedem Gerät mit einem modernen Browser, einschließlich Telefonen und Tablets.