URL Decode Online

Dekódujte procentuálně zakódované URL

Zkusit příklad

Zakódované URL / Text

Dekódováno

Běží lokálně · Bezpečné pro vkládání tajných údajů
Dekódovaný výstup...
Vyzkoušejte také:URL Encode Online

Co je URL dekódování?

URL dekódování (procentuální dekódování) je opakem URL kódování: převádí procentuálně zakódované sekvence zpět na jejich původní znaky. Každý výskyt znaku procenta následovaný dvěma hexadecimálními číslicemi (%XX) je nahrazen bajtem, který XX představuje. Více po sobě jdoucích zakódovaných bajtů se znovu spojí, aby byl rekonstruován původní znak UTF-8.

URL dekódování je každodenní úkol pro vývojáře pracující s API, webovým scrapingem, analýzou logů a autentizačními toky. Zakódované URL jsou čitelné pro stroje, ale pro lidi neprůhledné — jejich dekódování okamžitě odhalí skutečné cesty, vyhledávací dotazy, cíle přesměrování a hodnoty parametrů.

Proč tento nástroj používat?

Rychle porozumějte jakékoli procentuálně zakódované URL nebo řetězci dotazu — není potřeba konzole prohlížeče, nic se neposílá na server.

Okamžité dekódování
Vložte jakoukoli zakódovanou URL nebo parametr a okamžitě uvidíte čitelnou verzi. Skvělé pro ladění API požadavků a souborů logů.
🛡️
Obnovení po chybě
Pro vstupy obsahující staré znaky Latin-1 zakódované procentuálně, které by selhaly při decodeURIComponent, automaticky využije starší unescape().
🔒
Pouze na straně klienta
Veškeré dekódování probíhá lokálně ve vašem prohlížeči. Tokeny, hesla a soukromé parametry dotazu nikdy neopustí vaše zařízení.
🔁
Plná podpora URL
Dekódujte celé URL nebo jednotlivé hodnoty parametrů. Nástroj zvládá jak standardní mezery %20, tak zachovává znaky + jako doslovné znaky plus.

Jak používat tento online dekodér URL

Žádný účet, žádná instalace. Vložte procentuálně zakódovaný řetězec do vstupního pole a dekódovaný výsledek se okamžitě zobrazí. Vše běží ve vašem prohlížeči — vaše data nikdy neopustí vaše zařízení.

  1. 1
    Vložte zakódovanou URL nebo řetězec
    Zkopírujte libovolný procentuálně zakódovaný řetězec — URL z adresního řádku, parametr dotazu ze serverových logů, odpověď API nebo cíl přesměrování — a vložte jej do vstupního pole.
  2. 2
    Automatická detekce formátu
    Dekodér automaticky zpracovává jak procentuální kódování %XX, tak + jako mezeru (application/x-www-form-urlencoded). Není třeba ručně zadávat formát kódování.
  3. 3
    Zkontrolujte dekódovaný výstup
    Čitelný text se okamžitě zobrazí. Pokud vstup obsahoval vnořené kódování (dvojitě zakódované řetězce), dekodér řeší jednu vrstvu najednou. Při chybně formátovaných sekvencích %XX se zobrazí chyba.
  4. 4
    Zkopírujte nebo znovu zakódujte
    Klikněte na Kopírovat, abyste převzali dekódovaný řetězec. Potřebujete jej znovu zakódovat s jiným nastavením? Přepněte se jedním kliknutím na nástroj URL Encode.

Jak dekódování funguje

Dekodér prochází vstup a hledá sekvence %, převádí každou skupinu dvou hexadecimálních číslic na hodnotu bajtu, seskupuje po sobě jdoucí bajtové sekvence a interpretuje je jako UTF-8, čímž vytváří výsledné znaky Unicode.

Příklad
Vstup:https%3A%2F%2Fexample.com%2Fsearch%3Fq%3Dhello%20world
%3A:  %2F/  %3F?  %3D=  %20space
Výstup:https://example.com/search?q=hello world

Referenční tabulka procentuálně kódovaných znaků

Rychlý přehled nejčastěji se vyskytujících procentuálně zakódovaných sekvencí:

ZakódovánoZnakKde se vyskytuje
%20spacepath segments, query values
%2B+literal plus (not a space in query)
%2F/slash inside a path component
%3F?literal question mark in a value
%23#literal hash in a value
%26&literal ampersand in a value
%3D=literal equals sign in a value
%40@at sign in username / password
%3A:colon inside a path segment
%25%literal percent sign
%2C,comma in path or query
%5B[opening bracket
%5D]closing bracket
%7B{curly brace in template literals
%7D}curly brace in template literals

Běžné případy použití

Ladění API požadavků
Zkopírujte URL ze síťových logů v DevTools prohlížeče a dekódujte ji, abyste viděli skutečné hodnoty parametrů dotazu — obzvláště užitečné, když automatizované nástroje nebo knihovny procentuálně zakódovaly parametry.
Čtení souborů logů
Přístupové logy webových serverů a aplikační logy ukládají URL v zakódované podobě. Dekódujte je, abyste nalezli skutečně požadované cesty, vyhledávací dotazy a hodnoty parametrů.
Kontrola přesměrování
OAuth callbacky, SSO přesměrování a URL pro sledování odkazů často obsahují silně zakódované parametry redirect_uri nebo next. Dekódujte URL, abyste zjistili zamýšlený cíl.
Zpracování webhook payloadů
Těla webhooků odeslaných jako application/x-www-form-urlencoded (Stripe, Twilio, GitHub) přicházejí jako procentuálně zakódované řetězce. Dekódujte je, abyste přečetli skutečné hodnoty polí.
Extrakce vyhledávacích dotazů
Analytické URL a referrer hlavičky obsahují původní vyhledávací dotaz uživatele procentuálně zakódovaný v parametru q=. Dekódujte pro zobrazení nebo analýzu skutečných vyhledávacích výrazů.
Reverzní inženýrství URL
Při integraci s API třetích stran nebo scrapingu se setkáte s URL obsahujícími zakódované segmenty cest a parametry. Dekódujte je, abyste pochopili strukturu URL a mohli reprodukovat požadavky.

Časté chyby

Nejčastější chyby při dekódování procentuálně zakódovaných řetězců:

Záměna + a %20
V datech application/x-www-form-urlencoded (odesílání HTML formulářů) + představuje mezeru. Ale v surovém URL cestě nebo v hodnotě zakódované pomocí encodeURIComponent je + doslova znakem plus. decodeURIComponent nepřevádí + na mezeru — pro data formulářů použijte URLSearchParams nebo unquote_plus.
Dvojitě zakódované řetězce
Pokud byl řetězec zakódován dvakrát, jedno dekódování stále ponechá znaky procenta: %2520 se dekóduje na %20, nikoli na mezeru. Dekódujte podruhé, abyste získali původní hodnotu. Dávejte na to pozor v logách, proxy serverech a middlewaru, který znovu kóduje již zakódovaná data.
Chybně formátované procentuální sekvence
Samostatné % nebo % následované nehexadecimálními znaky (např. %GG nebo % 2) je neplatné a vyvolá URIError. Vždy ověřte vstup nebo obalte dekódování do bloku try/catch.
Nesoulad kódování (Latin-1 vs. UTF-8)
Staré systémy (PHP's urlencode, klasický ASP) kódovaly znaky jako bajty Latin-1. Řetězec zakódovaný jako Latin-1 se může nesprávně dekódovat pomocí dekodéru UTF-8. Pokud vidíte zkomolené znaky, zkuste starší cestu přes unescape() nebo zjistěte původní kódování.

Ukázky kódu

Jak URL-dekódovat řetězce v populárních jazycích a prostředích:

JavaScript (browser / Node.js)
// Decode a percent-encoded component
decodeURIComponent('hello%20world%20%26%20more') // → "hello world & more"

// Decode a full URL (leaves structure characters encoded)
decodeURI('https://example.com/path?q=hello%20world') // → "https://example.com/path?q=hello world"

// Parse a query string (handles + as space automatically)
const params = new URLSearchParams('q=hello+world&lang=en')
params.get('q') // → "hello world"
Python
from urllib.parse import unquote, unquote_plus, parse_qs

# Decode percent-encoded string
unquote('hello%20world%20%26%20more')   # → 'hello world & more'

# Decode form-encoded string (+ → space)
unquote_plus('hello+world%21')          # → 'hello world!'

# Parse full query string
parse_qs('q=hello%20world&lang=en')     # → {'q': ['hello world'], 'lang': ['en']}
Node.js (URL API)
const url = new URL('https://example.com/search?q=hello%20world%20%26%20more')
url.searchParams.get('q')  // → "hello world & more"
url.pathname               // → "/search"
CLI (bash)
# Decode with Python one-liner
python3 -c "from urllib.parse import unquote; print(unquote('hello%20world'))"

# Decode with Node.js
node -e "console.log(decodeURIComponent('hello%20world%20%26'))"

Dekodér URL vs. alternativy

Několik nástrojů dokáže dekódovat procentuálně zakódované řetězce, ale liší se v přehlednosti, soukromí a pohodlí.

Tento nástroj
Funguje v prohlížeči, okamžitě, soukromě. Zpracovává kódování %XX, + jako mezeru, Unicode a poškozené sekvence. Žádná data nejsou odeslána na žádný server.
Adresní řádek prohlížeče
Prohlížeče dekódují URL pro zobrazení, ale ne vždy zcela — některé zakódované znaky zůstávají v adresním řádku viditelné. Není užitečné pro kontrolu hodnot jednotlivých parametrů.
DevTools / curl -v
DevTools prohlížeče a curl zobrazují surové a dekódované URL v síťových požadavcích. Užitečné pro ladění, ale vyžaduje přepínání nástrojů a vědět, kde hledat.

Nejčastější dotazy

Jaký je rozdíl mezi decodeURIComponent a decodeURI?
decodeURIComponent dekóduje všechny procentuálně zakódované sekvence včetně rezervovaných znaků (%2F → /, %3F → ? atd.). decodeURI dekóduje pouze sekvence, které by nevyprodukovaly znak se speciálním významem v URL — ponechává %2F, %3F, %23 a další strukturální znaky zakódované. Používejte decodeURIComponent pro hodnoty parametrů; decodeURI používejte pouze tehdy, když máte celou URL a chcete zachovat její strukturu.
Proč se zobrazuje URIError: malformed URI?
Tato chyba z decodeURIComponent nastává, když vstup obsahuje % nenásledované dvěma platnými hexadecimálními číslicemi, nebo když je vícebajtová sekvence UTF-8 neúplná (např. %E2 bez následného %82%AC). Odstraňte nebo escapujte osamocené znaky procenta před dekódováním.
Zpracovává dekódování + jako mezeru?
Ne — decodeURIComponent zachází s + jako s doslovným znakem plus, nikoli mezerou. Konvence + → mezera platí pouze pro data application/x-www-form-urlencoded (odesílání HTML formulářů). Pro dekódování dat formuláře použijte URLSearchParams (prohlížeč/Node) nebo urllib.parse.unquote_plus (Python).
Je URL dekódování na straně klienta bezpečné?
Ano — URL dekódování je čistá transformace bez síťových požadavků. Všechny moderní prohlížeče obsahují decodeURIComponent a decodeURI jako nativní funkce. Tento nástroj provádí dekódování výhradně ve vašem prohlížeči; žádná data se nikam neposílají.
Jak dekóduji URL, která byla zakódována vícekrát?
Dekódujte ji vícekrát, dokud se výstup nestabilizuje (nebudou se řešit žádné další sekvence %). To nastane, když je již zakódovaná URL předána dalšímu kodéru. Každý průchod dekódováním odstraní jednu vrstvu kódování.
Co představuje %XX?
Dva znaky za % jsou hexadecimální číslice představující hodnotu jednoho bajtu (00–FF). Pro znaky ASCII je tento bajt ASCII kód znaku: %41 = 65 = 'A'. Pro znaky mimo ASCII představuje více sekvencí %XX bajtovou sekvenci UTF-8 daného znaku: znak eura € je %E2%82%AC (tři bajty: 0xE2, 0x82, 0xAC).
Jaké kódování používá prohlížeč při odesílání HTML formulářů?
HTML formuláře s method=GET přidávají pole do URL pomocí kódování application/x-www-form-urlencoded, kde jsou mezery nahrazeny + místo %20 a ostatní speciální znaky jsou procentuálně zakódovány. Možnost + → mezera v nástroji URL Decode zpracovává tento formát. Formuláře s method=POST a enctype=application/x-www-form-urlencoded používají stejné schéma v těle požadavku.
Existuje limit velikosti pro dekódování?
Žádný limit na straně serveru — nástroj běží zcela ve vašem prohlížeči. Praktické limity závisí na paměti vašeho prohlížeče. Pro velmi dlouhé zakódované řetězce nebo dávkové zpracování použijte decodeURIComponent ve skriptu.