Formátování kódu / MULTIVERTO

Zploštit objekt JSON

Změní vnořené vlastnosti na klíče cest JSON Pointer.

Okamžitý převodVáš vstup zůstává v prohlížeči. Text k převodu nikam neodesíláme.
Soubor zůstává ve vašem prohlížeči.
Řetězit nástroje

Každý textový nástroj použijte na předchozí výsledek.

01 / Postup

Jak to funguje

Projde vnořené objekty a pole i skalární hodnoty ponechá jako listy.

Užitečná poznámka

Změní vnořené vlastnosti na klíče cest JSON Pointer.

02 / Příklad

Příklad

Váš vstup{"uzivatel":{"jmeno":"Ahoj","zprava":"Vítej"},"aktivni":true}
Výsledek{ "/uzivatel/jmeno": "Ahoj", "/uzivatel/zprava": "Vítej", "/aktivni": true }

03 / Postup

Zploštit objekt JSON — Jak to funguje

Co převod mění

Změní vnořené vlastnosti na klíče cest JSON Pointer. Projde vnořené objekty a pole i skalární hodnoty ponechá jako listy.

Pracovní příklad

Začněte vstupem zobrazeným na této stránce: {"uzivatel":{"jmeno":"Ahoj","zprava":"Vítej"},"aktivni":true}. Nástroj vytvoří: { "/uzivatel/jmeno": "Ahoj", "/uzivatel/zprava": "Vítej", "/aktivni": true }. Nejprve zkuste příklad a porovnejte obě reprezentace. Potom jej nahraďte vlastními údaji. Výsledek je text, který lze zkopírovat do editoru, testu či požadavku až po ověření, že cíl očekává stejný tvar.

Pravidla a hranice formátu

Zploštění používá tokeny JSON Pointer podle RFC 6901 pro názvy vlastností: lomítko odděluje úrovně, vlnovka v názvu se mění na ~0 a lomítko na ~1. Jde o zápis cest, ne o obecnou kompresi JSON. Pole zůstávají celé listové hodnoty, aby se číselné klíče objektu nepletly s indexy pole; listy zůstávají i skaláry a prázdné objekty. Opačný směr přijímá plochý objekt s takovými cestami, vytvoří vnořené objekty a odmítne konfliktní cesty. Prázdný kořenový objekt představuje prázdná cesta s prázdným objektem. Toto úmyslně omezené mapování dělá obousměrný převod předvídatelným. Před aktualizací databáze porovnejte výsledek se zdrojem: lomítko v klíči se musí escapovat a cesta nemůže procházet existujícím skalárem.

Kontrola výsledku

Při kontrole nechte původní text vedle převedeného. Nejprve porovnejte malý známý případ, ideálně s interpunkcí, znakem mimo ASCII, opakovanou hodnotou nebo prázdným polem důležitým pro vaše data. Čitelný výstup nedokazuje, že cílový program přijímá stejné schéma nebo stejné zvyklosti. Při výměně dat mezi aplikacemi spusťte parser cílové aplikace a po importu zkontrolujte několik záznamů. Důležité zdrojové soubory držte ve verzovacím systému, aby se změny daly vrátit. Zpracování probíhá v prohlížeči; tato stránka neposílá vložený obsah konverznímu serveru. Paměť prohlížeče a schránka však na sdíleném zařízení stále vyžadují běžnou opatrnost.

Zdroj a výsledek mají odlišnou úlohu, i když vypadají podobně. Výše uvedený postup popisuje podporovanou podmnožinu, ne všechna rozšíření formátu. U přísného cílového systému nejprve vyzkoušejte malý známý případ a teprve potom měňte mnoho záznamů. Pokud ověření selže, vraťte se ke zdroji a první nahlášené chybě; oprava jen výstupu může zakrýt příčinu.

Pro spolehlivý obousměrný převod zploštěte objekt a před opravou či importem obnovte vytvořené cesty. Porovnejte zrekonstruovanou strukturu JSON včetně prázdných objektů, polí a názvů s lomítky nebo vlnovkami. Neupravujte ručně předponu cesty na listovou hodnotu: opačný nástroj odmítne překrývající se cesty i potomky pod listem.

Jak se vstup mění na výsledek
JSON — Vstup
Načíst a změnit strukturu
JSON — Výsledek