Text a kód / MULTIVERTO

Porovnanie JSON online

Porovnajte dva dokumenty JSON lokálne a nájdite pridané, odstránené či zmenené hodnoty.

Vložiť tento nástroj

Vyberte, čo návštevníci uvidia pri načítaní.

Vyberte, čo návštevníci uvidia pri načítaní.

Hodnoty vo zverejnenom kóde môže čítať každý. Nevkladajte súkromné tokeny ani súbory.

Náhľad nástroja ↗

02 / Postup

Porovnanie JSON online — Ako to funguje

Porovnávajte hodnoty JSON, nie odsadenie

Pôvodný JSON vložte naľavo a novú verziu napravo. Nástroj spracuje oba dokumenty a porovná ich dátové štruktúry. Medzery, odsadenie a poradie kľúčov objektu nevytvárajú falošné rozdiely, pretože menia iba zápis. Zmenená hodnota, pridaný kľúč alebo odstránený kľúč sa zobrazí. Tento postup pomáha, keď dve odpovede API na obrazovke vyzerajú odlišne, ale potrebujete zistiť, či sa zmenili samotné údaje. Texty sa počas porovnávania spracujú v prehliadači.

Polia JSON sú usporiadané zoznamy, preto sa ich prvky porovnávajú podľa indexu. Presunutie hodnoty môže spôsobiť viac rozdielov. Je to zámerné pri zozname krokov alebo zoradených výsledkoch, kde poradie nesie význam. Ak majú záznamy stabilné identifikátory a poradie nie je dôležité, najprv ich zoraďte alebo spojte podľa pravidla vhodného pre vaše údaje. Každý posunutý index nepovažujte automaticky za samostatnú úpravu.

Ako čítať cesty pri zmenách

Každý rozdiel má cestu podobnú JSON Pointer. Kľúč meno na najvyššej úrovni sa označí ako /meno; druhý prvok poľa roly ako /roly/1. Výstup rozlišuje pridanú, odstránenú a zmenenú hodnotu. Špeciálne znaky v kľúčoch sa zapisujú s náhradou: lomka sa zmení na ~1 a vlnovka na ~0. Cesta umožňuje nájsť presné miesto vo vnorenom dokumente bez prehľadávania celého textu.

V pripravenom príklade má pôvodný objekt hodnotu meno Ada a rolu správca. Nový objekt má meno Gréta a pridanú rolu redaktor. Výsledok má ukázať zmenu /meno a pridanie /roly/1. Samotná zmena odsadenia nevytvorí štruktúrny rozdiel. Ak však textový reťazec "1" nahradíte číslom 1, ide o skutočnú zmenu, pretože JSON rozlišuje reťazec od čísla.

Praktické použitie pri API a konfigurácii

Porovnajte odpoveď služby pred nasadením a po ňom, dve verzie konfigurácie alebo očakávaný výsledok testu so skutočným. Dôležité cesty vložte do hlásenia chyby, aby kolega vedel rozdiel zopakovať. Lokálne spracovanie znamená, že dokumenty neposielate na cudziu konverznú službu. Zverejnenie citlivých hodnôt v požiadavke na opravu alebo na snímke obrazovky je však samostatné rozhodnutie.

Začnite kontrolou platnosti oboch dokumentov. Opravte koncové čiarky a komentáre, ktoré štandardný JSON nepripúšťa. Spustite porovnanie, pozrite prvú zmenenú cestu a určte, či je rozdiel pre aplikáciu významný. Ak sa naraz posunulo veľa indexov poľa, overte, či celú sériu nevysvetľuje iba zmena poradia, namiesto tvrdenia, že sa upravil každý prvok.

Obmedzenia a správna interpretácia

Štruktúrne porovnanie nie je kontrolou schémy ani znalosťou významu údajov vo vašej aplikácii. Nedokáže určiť, či dve rôzne URL označujú tú istú službu alebo či bolo premenovanie poľa plánované. Veľké vstupy majú limit a zobrazenie sa zastaví po prvých 500 rozdieloch, aby stránka zostala svižná. Ak potrebujete úplný audit obrovského dokumentu, pôvodné súbory si zachovajte.

Bežný parser JSON spracuje opakované názvy kľúčov podľa vlastného pravidla, takže tento nástroj nie je vhodný na skúmanie nejednoznačných objektov s duplicitnými kľúčmi. Čísla používajú reprezentáciu JavaScriptu; celé čísla mimo bezpečného rozsahu potrebujú osobitný presný parser. Najlepšie sa hodí na obvyklé odpovede API a konfiguračné súbory, ktorých hodnoty tieto hranice dodržiavajú.

Porovnanie JSON online — Ako to funguje
  1. Porovnávajte hodnoty JSON, nie odsadenie
  2. Ako čítať cesty pri zmenách
  3. Praktické použitie pri API a konfigurácii