ConvertText.app LogoConvertText.app

URL kodér / dekodér

Kódujte URL adresy, řetězce dotazů a speciální znaky do procentového kódování nebo dekódujte procentově zakódovaný text zpět na čitelné URL adresy — okamžitě, přímo ve vašem prohlížeči. Tento URL kodér dekodér funguje jako procentový kodér, procentový dekodér, kodér řetězce dotazu, dekodér řetězce dotazu i UTF-8 kompatibilní převodník kódování URL, vše na jedné stránce.

Vložte URL adresu nebo libovolný text do vstupního pole, zvolte kódování nebo dekódování a zda pracujete s jednou komponentou URL nebo celou URL adresou, a zkopírujte výsledek. Vše probíhá lokálně ve vašem prohlížeči pomocí nativních funkcí JavaScript, takže váš vstup nikdy neopustí vaše zařízení.

Možnosti převodu
Vyberte, zda chcete kódovat nebo dekódovat, a zda pracujete s jednou komponentou URL (např. hodnotou dotazu) nebo celou URL.

Režim komponenty procentuálně kóduje rezervované znaky jako / ? # & = aby byla hodnota bezpečná v řetězci dotazu nebo segmentu cesty.

Text ke kódování
Zadejte text nebo URL, který chcete zakódovat. Mezery se stanou %20, speciální znaky se procentuálně zakódují.
0 znaky
Kódovaný výstup
Procentuálně kódovaný výsledek, bezpečný pro použití v URL.
0 znaky

Jedná se o soukromý, prohlížečový URL kodér a dekodér. Využívá nativní funkce encodeURIComponent, encodeURI, decodeURIComponent a decodeURI pro bezpečné zpracování textu UTF-8 bez jakéhokoli přenosu na server.

Co dělá tento URL kodér a dekodér?

URL kodér převádí znaky, které nelze přímo použít v URL adrese, na procentově zakódované sekvence. URL dekodér tento proces obrátí a převede procentově zakódovaný text zpět na původní znaky. Tato stránka to zvládá oběma směry, pro jednotlivou komponentu URL i celou URL adresu.

Nástroj využívá čtyři standardní funkce JavaScriptu:

  • encodeURIComponent — pro kódování jedné komponenty URL, například hodnoty parametru dotazu.
  • encodeURI — pro kódování celé URL adresy při zachování vyhrazených znaků jako : / ? # & = jež mají strukturální význam.
  • decodeURIComponent — pro dekódování jedné komponenty URL zpět na původní znaky.
  • decodeURI — pro dekódování celé URL adresy bez dotýkání se vyhrazených znaků.

Všechny převody jsou kompatibilní s UTF-8, takže písmena s diakritikou, emoji a znaky z nematinských písem jsou zpracovávány správně. Nic se nenahrává, nic se neukládá a neprovádějí se žádná volání API.

Příklady kódování URL

Několik praktických příkladů, jak kódování URL vypadá v praxi:

  • Mezera se změní na %20, takže ahoj světe se zakóduje jako ahoj%20sv%C4%9Bte.
  • Lomítko v hodnotě dotazu se změní na %2F, takže a/b se jako parametr změní na a%2Fb.
  • Otazník v hodnotě se změní na %3F, takže co? se změní na co%3F.
  • Ampersand v hodnotě se změní na %26, čímž se zabrání narušení okolního řetězce dotazu.
  • Mřížka v hodnotě se změní na %23, takže c# se změní na c%23.
  • Znaky mimo ASCII používají vícebajtové sekvence UTF-8. Například café se změní na caf%C3%A9 (é jsou dva bajty UTF-8).
  • Emoji také používají vícebajtové UTF-8: 😀 se změní na %F0%9F%98%80.

Přepněte nástroj do režimu Dekódovat a vložte libovolný z těchto zakódovaných řetězců, abyste viděli přesně obnovený původní text.

Komponenta URL vs. kódování celé URL

Výběr správného režimu je důležitý, protože oba kodéry zacházejí s vyhrazenými znaky odlišně.

Použijte režim Komponenta (encodeURIComponent / decodeURIComponent), když kódujete jednu hodnotu, která bude vložena do URL adresy — například hodnotu parametru dotazu, segment cesty nebo hodnotu fragmentu. Režim Komponenta procentově zakóduje vyhrazené znaky (: / ? # [ ] @ ! $ & ' ( ) * + , ; =), aby nemohly náhodně změnit strukturu okolní URL adresy.

Použijte režim Celá URL (encodeURI / decodeURI), pokud máte celou URL adresu jako https://priklad.cz/cesta?dotaz=hodnota#fragment a chcete pouze zakódovat nezabezpečené znaky (například mezery nebo znaky mimo ASCII), aniž byste se dotkli vyhrazených strukturních znaků.

Častou chybou je použití encodeURI na hodnotu, která má být parametrem dotazu. Vyhrazené znaky pak zůstanou nedotčeny, což může poškodit okolní URL adresu. V případě pochybností zakódujte každou hodnotu dotazu pomocí encodeURIComponent a poté sestavte URL adresu.

Co je procentové kódování?

Procentové kódování (nazývané také kódování URL) je způsob, jak v URL adrese reprezentovat znaky, které jsou buď vyhrazeny (mají strukturální význam), nebo v URL adresách vůbec nejsou povoleny. Každý nezabezpečený bajt se zapíše jako znak procenta následovaný dvěma hexadecimálními číslicemi — například %20 pro mezeru, %2F pro lomítko nebo %3F pro otazník.

Kódování pracuje s bajty, nikoli přímo se znaky. Moderní URL adresy používají UTF-8 pro převod znaků na bajty, a proto může jedno písmeno s diakritikou odpovídat dvěma procentově zakódovaným bajtům a emoji čtyřem. Tento nástroj vždy používá UTF-8, takže zakódované řetězce jsou interoperabilní se zbytkem webu.

Procentové kódování je definováno v RFC 3986. Nativní funkce JavaScriptu zde použité tuto specifikaci implementují, takže hodnota zakódovaná pomocí encodeURIComponent v libovolném moderním prohlížeči bude správně dekódována pomocí decodeURIComponent kdekoliv jinde.

Kdy použít tento nástroj

Tento URL kodér dekodér se hodí vždy, když potřebujete bezpečně přesunout text do nebo z URL adresy. Typické scénáře:

  • Kódování textu pro řetězec dotazu před vložením do požadavku API, řádku protokolu nebo adresního řádku prohlížeče.
  • Dekódování parametrů URL z protokolu požadavků nebo exportu analytiky pro čtení původních hodnot.
  • Kontrola dlouhé zakódované URL adresy jejím dekódováním a ověřením, co je skutečně předáváno.
  • Zakódování speciálních znaků v URL adrese před jejím sdílením v chatu, dokumentaci nebo JSON payloadu.
  • Výuka nebo studium mapování procentového kódování a sekvencí bajtů UTF-8 na znaky.

Protože nástroj běží zcela ve vašem prohlížeči, je vhodný i pro citlivé URL adresy (interní odkazy, tokeny, podepsané URL), které raději nevkládáte do vzdálené služby.

Kódování URL vs. čistění URL

Kódování URL a čistění URL jsou dvě různé operace, které jsou často zaměňovány.

Kódování URL (tento nástroj) transformuje znaky do procentového kódování a naopak. Struktura URL adresy je zachována; nic se nepřidává ani neodstraňuje.

Čistění URL (samostatný typ nástroje) odstraňuje sledovací parametry jako utm_source, utm_medium, fbclid, gclid a podobné klíče dotazu z URL adresy, takže výsledný odkaz již neobsahuje metadata sledování. Čistění URL mění parametry v URL adrese — kódování ne.

Pokud chcete odebrat sledovací parametry, potřebujete specializovaný nástroj pro čistění URL. Pokud chcete kódovat nebo dekódovat text do/z procentového kódování, je to správný nástroj.

Časté dotazy

Co je URL kodér a dekodér?

URL kodér převádí vyhrazené nebo nezabezpečené znaky v URL adrese na procentově zakódované sekvence (například mezera se změní na %20). URL dekodér tento proces obrátí a obnoví původní znaky. Tato stránka podporuje oba směry a funguje pro jednotlivou komponentu URL i celou URL adresu — vše ve vašem prohlížeči.

Co je kódování URL?

Kódování URL je proces nahrazení znaků, které mají v URL adresách zvláštní význam nebo v nich nejsou vůbec povoleny, procentově zakódovanými sekvencemi. Každý nezabezpečený bajt se zapíše jako znak procenta následovaný dvěma hexadecimálními číslicemi. Kódování URL se také nazývá procentové kódování a je definováno v RFC 3986.

Co je procentové kódování?

Procentové kódování je kódovací schéma, které URL adresy používají pro reprezentaci nezabezpečených nebo vyhrazených znaků. Znak se převede na jeden nebo více bajtů (UTF-8 pro moderní URL), přičemž každý bajt se zapíše jako znak procenta následovaný jeho dvoucifernout hexadecimální hodnotou. Například mezera je bajt 0x20 a zapisuje se jako %20.

Kdy bych měl použít encodeURIComponent místo encodeURI?

Použijte encodeURIComponent, když kódujete jednu hodnotu, která bude vložena do URL adresy — typicky hodnotu parametru dotazu, segment cesty nebo hodnotu fragmentu. Tato funkce procentově zakóduje vyhrazené znaky jako /, ?, #, & a =, aby nemohly náhodně změnit strukturu okolní URL adresy. Použijte encodeURI, pokud již máte celou URL adresu a chcete pouze zakódovat nezabezpečené znaky (jako mezery nebo znaky mimo ASCII), aniž byste se dotkli vyhrazených strukturních znaků.

Jaký je rozdíl mezi %20 a +?

Oba mohou reprezentovat mezeru, ale v různých kontextech. %20 je standardní procentové kódování mezery a je platné kdekoliv v URL adrese. Znak + je interpretován jako mezera pouze v datech application/x-www-form-urlencoded — typicky v těle odeslaného HTML formuláře nebo v řetězcích dotazů generovaných starším kódem. Nativní funkce decodeURIComponent a decodeURI NEPŘEVÁDĚJÍ + na mezeru a tento nástroj se řídí stejným striktním chováním: + je zachován přesně tak, jak jste ho zadali. Pokud dekódujete data formuláře a potřebujete, aby + znamenal mezeru, nahraďte + mezerou ručně před dekódováním.

Může tento nástroj dekódovat řetězce dotazů?

Ano. Vložte zakódovaný řetězec dotazu (nebo jednu zakódovanou hodnotu) do vstupního pole a přepněte směr na Dekódovat. Pro jednotlivou hodnotu parametru použijte režim Komponenta a pro dekódování URL adresy jako celku použijte režim Celá URL. Upozorňujeme, že nástroj nerozděluje řetězec dotazu na páry klíč/hodnota — dekóduje procentově zakódované znaky ve vloženém textu.

Podporuje tento URL dekodér znaky UTF-8?

Ano. Nativní funkce JavaScriptu zpracovávají procentově zakódované sekvence jako bajty UTF-8, takže písmena s diakritikou, emoji a znaky z nematinských písem jsou správně dekódovány zpět do původní podoby. Například caf%C3%A9 se dekóduje na café a %F0%9F%98%80 se dekóduje na 😀. Pokud sekvence není platné UTF-8, dekodér nahlásí chybu špatně formátovaného vstupu, namísto tichého vytváření náhradních znaků.

Je můj text odesílán na server?

Ne. Kodér a dekodér běží zcela ve vašem prohlížeči pomocí nativních funkcí JavaScriptu. Váš vstup není nikdy odesílán na server, nikdy ukládán ani protokolován. Zavřením karty se vše zahodí. Díky tomu je nástroj vhodný pro citlivé URL adresy (interní odkazy, tokeny, podepsané URL), které raději nevkládáte do vzdálené služby.

Je kódování URL totéž co čistění URL?

Ne. Kódování URL transformuje znaky do/z procentového kódování bez změny přítomných parametrů. Čistění URL je samostatná operace, která z URL adresy odstraňuje sledovací parametry jako utm_source, utm_medium, fbclid nebo gclid. Pokud chcete z odkazu odebrat sledovače, potřebujete specializovaný nástroj pro čistění URL; tato stránka pouze kóduje a dekóduje.

Proč některé dekódované URL adresy stále obsahují znaky procenta?

Pokud byla původní URL adresa zakódována dvakrát (dvojité kódování), jedno dekódování zruší pouze jednu vrstvu. Například %2520 se dekóduje na %20, které se pak v druhém průchodu dekóduje na mezeru. Pokud výsledek stále vypadá zakódovaně, spusťte jej znovu přes dekodér. Doslovný znak procenta, který není součástí platné escape sekvence (například abc%), je neplatné procentové kódování a dekodér nahlásí chybu místo hádání.

Prozkoumejte další textové nástroje

Bezplatné online nástroje pro převod, kódování a transformaci textu

Převod velikosti písmen

Transformujte velká/malá písmena — velká, malá, titulek a další

Překladač Morseovy abecedy

Převádí text na Morseovu abecedu a zpět

Audio dekodér Morseovy abecedy

Dekódujte Morseovku ze zvukových souborů nebo z mikrofonu

Binární překladač

Převádí text na binární kód a zpět

Kódovač/dekodér Base64

Kóduje a dekóduje Base64 text

Hex Converter

Převádí text na hexadecimální a zpět

Kódovač/dekodér ROT13

Kóduje a dekóduje text pomocí šifry ROT13

Generátor horního indexu

Převede text na horní index Unicode, kde je podporován

Generátor dolního indexu

Převede text na dolní index Unicode, kde je podporován

Generátor přeškrtnutého textu

Okamžitě generujte přeškrtnutý text Unicode pro kopírování a vkládání

Obrázek do Base64

Převeďte obrázky na řetězce Base64 a datové URI