JSON-verschil
Vergelijk twee JSON-documenten structureel en bekijk elke toegevoegde, verwijderde en gewijzigde waarde aan de hand van zijn pad.
JSON-verschil
Plak de originele JSON in het eerste veld en de gewijzigde versie in het tweede, en de tool rapporteert elk verschil via zijn pad: + user.roles[2] = "admin" voor een toegevoegde waarde, − user.legacyId voor een verwijderde, ~ user.name: "Anna" → "Eva" voor een verandering. De vergelijking is structureel, niet tekstueel: beide documenten worden geparseerd en hun waarden worden recursief vergeleken, dus herformattering, inspringing en de volgorde van objectsleutels tellen nooit als verschillen. Dat is precies wat een verschil in platte tekst verkeerd doet over JSON.
Reik ernaar wanneer twee API-reacties zouden moeten overeenkomen, maar dat niet doen: fasering ten opzichte van productie, de payload van gisteren ten opzichte van die van vandaag, de reactie vóór en na een implementatie. Het is net zo handig voor configuratie-drift (twee geëxporteerde configuratiebestanden die in de loop van de tijd uit elkaar zijn gegroeid) en voor het debuggen van geserialiseerde status, waarbij een enkele gewijzigde vlag zich verbergt in kilobytes aan geneste objecten.
Array-elementen worden per index vergeleken, zodat een verschoven lijst verschijnt als een reeks wijzigingen. Als de volgorde er echt niet toe doet (tags, toestemmingslijsten), schakel dan "Arrayvolgorde negeren" in en arrays worden als multisets gematcht: alleen echt toegevoegde of verwijderde elementen worden gerapporteerd. "Toon ongewijzigde waarden" vermeldt bovendien elk ongewijzigd pad, waardoor de uitvoer wordt omgezet in een volledig geannoteerde inventaris van het document. Het uitvoerformaat maakt van dezelfde vergelijking een toepasbare patch: RFC 6902 JSON Patch met add-, remove- en replace-bewerkingen op JSON Pointer-paden, of een merge patch volgens RFC 7396 waarin null een verwijderde sleutel markeert. Array-elementen worden van achteren naar voren verwijderd zodat de patch na elke stap blijft kloppen, en voor elke wijziging kunnen test-bewerkingen komen: op een document dat inmiddels veranderd is faalt de patch dan in plaats van andermans werk te overschrijven.
Beide documenten worden volledig in uw browser geparseerd en vergeleken. Er wordt niets geüpload, dus productieladingen, tokens en klantgegevens in uw JSON blijven op uw apparaat.