JSON-Vergleich
Vergleiche zwei JSON-Dokumente strukturell und sieh jeden hinzugefügten, entfernten und geänderten Wert samt Pfad.
JSON-Vergleich
Füge das ursprüngliche JSON in das erste Feld ein, die geänderte Fassung in das zweite, und das Tool meldet jeden Unterschied samt Pfad: + user.roles[2] = "admin" für einen hinzugefügten Wert, − user.legacyId für einen entfernten, ~ user.name: "Anna" → "Eva" für eine Änderung. Der Vergleich ist strukturell, nicht textuell — beide Dokumente werden geparst und ihre Werte rekursiv verglichen. Formatierung, Einrückung und die Reihenfolge der Objektschlüssel zählen deshalb nie als Unterschied; genau daran scheitert ein gewöhnlicher Textvergleich bei JSON.
Greif dazu, wenn zwei API-Antworten übereinstimmen sollten, es aber nicht tun: Staging gegen Produktion, die Payload von gestern gegen die von heute, die Antwort vor und nach einem Deployment. Ebenso zuverlässig deckt es Konfigurationsdrift auf — zwei Exporte, die mit der Zeit auseinandergelaufen sind — und hilft beim Debuggen von serialisiertem Zustand, wenn sich ein einzelnes geändertes Flag in Kilobytes verschachtelter Objekte versteckt.
Array-Elemente werden per Index verglichen, eine verschobene Liste erscheint also als Folge von Änderungen. Spielt die Reihenfolge wirklich keine Rolle — Tags, Berechtigungslisten —, aktiviere „Reihenfolge in Arrays ignorieren“: Arrays werden dann als Multimengen abgeglichen und nur wirklich hinzugefügte oder entfernte Elemente gemeldet. „Unveränderte Werte anzeigen“ listet zusätzlich jeden unveränderten Pfad auf und macht die Ausgabe zu einem vollständigen kommentierten Inventar des Dokuments. Das Ausgabeformat macht aus demselben Vergleich einen anwendbaren Patch: RFC 6902 JSON Patch mit add-, remove- und replace-Operationen auf JSON-Pointer-Pfaden, oder ein Merge Patch nach RFC 7396, in dem null einen gelöschten Schlüssel markiert. Array-Elemente werden von hinten entfernt, damit der Patch nach jedem Schritt noch passt, und vor jeder Änderung lassen sich test-Operationen einfügen — auf einem inzwischen veränderten Dokument schlägt der Patch dann fehl, statt fremde Arbeit zu überschreiben.
Beide Dokumente werden vollständig in deinem Browser geparst und verglichen. Nichts wird hochgeladen — Produktions-Payloads, Tokens und Kundendaten in deinem JSON bleiben auf deinem Gerät.