Jak používat URL kodér a dekodér
- Vyberte svůj režim: Vyberte kódování pro převod URL nebo textové komponenty na procentuálně kódovaný formát, nebo dekódování pro převod kódovaného URL zpět na čitelný text.
- Vyberte typ kódování: Vyberte
encodeURIComponentpro kódování jednotlivých URL komponent (parametry dotazu, segmenty cesty) neboencodeURIpro kódování úplného URL se zachováním rezervovaných znaků jako :// a ?. - Zadejte svůj text: Vložte URL nebo text, který chcete zpracovat. Výstup se aktualizuje v reálném čase při psaní.
- Zkopírujte výsledek: Zkopírujte kódovaný nebo dekódovaný výstup jedním kliknutím.
Princip URL kódování (procentní kódování)
URL kódování, známé také jako procentuální kódování, je mechanizmus, kterým se speciální znaky v URL převádějí na formát, který může být bezpečně přenášen přes internet. URL mohou obsahovat pouze omezenou množinu ASCII znaků — především písmena, číslice a několik rezervovaných symbolů. Jakýkoliv znak mimo tuto množinu, včetně mezer, neanglických znaků a určitých interpunkčních znamének, musí být zakódován jako znak procenta následovaný dvěma šestnáctkovými číslicemi reprezentujícími bajtovou hodnotu znaku.
Rozdíl mezi encodeURI a encodeURIComponent je pro webové vývojáře kritický. encodeURI je navržen pro kódování kompletních URL a ponechává rezervované znaky jako dvojtečky, lomítka, otazníky a ampersandy nedotčené, protože tyto mají strukturní význam v URL. encodeURIComponent je určen pro jednotlivé komponenty v rámci URL — jako hodnoty parametrů dotazu — a kóduje všechny rezervované znaky, což zajišťuje, že hodnoty obsahující speciální znaky nenaruší strukturu URL.
URL kódování je nezbytné pro internacionalizovaná doménová jména, parametry dotazu obsahující uživatelský vstup, konstrukci API požadavku a data vložená do URL. Například vyhledávací dotaz obsahující mezery musí zakódovat každou mezeru jako %20 nebo + v závislosti na kontextu. Podobně znaky Unicode v URL musí být převedeny na jejich UTF-8 bajtové sekvence a pak procentuálně zakódovány, proces který může vytvořit vícebajtové sekvence pro znaky jiné než ASCII jako diakritiku nebo CJK ideogramy.