JSON Diff online

Lokale Verarbeitung
app.diff.view

Daten auch über #data={"name":"Ada"} oder #url=... einfügen; nach dem Lesen wird die Adressleiste geleert.

Anleitung

Links und rechts je ein JSON: struktureller Vergleich, ob Felder neu, gelöscht oder im Wert geändert sind. Besser als reiner Text-Diff bei API-Upgrades und Config-Änderungen mit gleicher Struktur, anderen Werten. Vor dem Release v1-/v2-Beispiele einfügen – nested Felder fallen weniger durch als ein Diff auf einer komprimierten Zeile in Git.

Semantischer Vergleich

Unterschiede auf Pfaden, nicht ob eine Zeile mit Leerzeichen fluchtet. Bei anderer Einrückung oder Key-Reihenfolge ist der Strukturvergleich meist ruhiger als Text-Diff.

Das Ergebnis markiert hinzugefügt, geändert, gelöscht; filterbar nach Änderungsart.

Gut für Reviews

Sehen, welche Keys sich ändern, bevor Clients angepasst werden. Typ Zahl zu String, gelöschte Felder – zuverlässiger als 500 Zeilen von Hand.

QA kann Baseline und aktuelle Antwort als Regressionsstichprobe nutzen.

Vorher sortieren

Ist die Key-Reihenfolge instabil, zuerst sortieren, dann einfügen. Bei Arrays ohne Reihenfolge-Vertrag können Positionswechsel Fehlalarme sein – fachlich prüfen.

Sensible Felder vorher maskieren, auch wenn diese Seite nichts hochlädt.

Beispiel

Links A
{
  "name": "Alice",
  "age": 30,
  "tags": ["dev", "json"]
}
Rechts B (Änderungen gegenüber A)
{
  "name": "Alice",
  "age": 31,
  "tags": ["dev", "tools"],
  "active": true
}
Zählt Array-Reihenfolge als Differenz?

Vergleich nach Position. Unterscheidet sich nur die Reihenfolge der Elemente, wird das markiert.

Was tun bei sehr großen Dateien?

Der Vergleich läuft auf Ihrem Rechner. Bei großem Volumen zuerst mit JSONPath relevante Ausschnitte ziehen.

Was erscheint bei völliger Gleichheit?

Hinweis, dass beide JSON-Dokumente identisch sind, ohne hervorgehobene Differenzen.

Sind null und fehlendes Feld dasselbe?

Nein. Eine Seite hat null , die andere den Key nicht – getrennt markiert, andere Semantik.

Empfohlener Ablauf

  1. Alte (A) und neue (B) Beispiele vorbereiten, bei Bedarf zuerst formatieren.
  2. «Vergleich ausführen» und nach hinzugefügt / geändert / gelöscht filtern.
  3. Pfade für CHANGELOG oder Test-Assertions notieren.
  4. Unterscheidet sich nur die Key-Reihenfolge, beide Seiten zuerst sortieren und erneut vergleichen.

Diff zeigt «worin sich zwei Daten unterscheiden»; Schema zeigt «ob die Vereinbarung gilt». Bei API-Upgrades beides empfehlenswert.