Kódování / dekódování URL
URL povolují bez kódování pouze některé znaky ASCII — mezery, ampersandy a Unicode musí být zakódovány procenty (%20, %26, UTF-8 bajtů). Před vytvořením parametrů dotazu zakódujte řetězce; dekódovat chaotické zkopírované odkazy na čtení hodnot — nezbytné pro ladění webových vývojářů.
Vstup
Výstup
Hello%20world
Jak kódovat nebo dekódovat URL
1. Vyberte kódování nebo dekódování.
2. Vložte prostý text nebo komponentu URL s kódováním procent.
3. Zkopírujte výsledek pro načtení URL nebo značku pro analýzu.
4. Používejte encodeURIComponent pro hodnoty dotazu, ne slepě celé adresy URL.
Příklady kódování URL
Vyhledávací dotaz
"káva & čaj" jako dotaz se v parametru ?q= změní na coffee%20%26%20tea.
Název města Unicode
Mnichov kóduje do M%C3%BCnchen v kódování UTF-8 procent.
Dekódovat parametr přesměrování
Přečtěte si ?next=%2Fdashboard%3Ftab%3D1 a zjistěte cílovou cestu přesměrování.
Kdy kódovat URL
• Při ručním vytváření řetězců dotazů v testech.
• Při ladění nefunkčních odkazů se speciálními znaky.
• Při dekódování analytických parametrů UTM z protokolů.
Časté chyby
• Nekódujte celé URL včetně protokolu — komponenty kódujte samostatně.
• Nekódovat dvakrát — %2520 znamená kódováno dvakrát.
• Pokud je cesta již zakódována ve směrovači — dekódujte pouze jednou.
Základy RFC 3986
Vyhrazené znaky jako ? # & mají význam v URL — kódují pouze datové části. Struktura: schéma://hostitel/cesta?dotaz#fragment.
URI přesměrování OAuth
Na přesném kódování záleží — neshoda přeruší přihlášení. Kopírovat registrované přesměrování bajt za bajtem.
Analýza protokolu
Pečlivě dekódujte parametry user-agent a referer — poškozené kódování způsobuje nesprávnou atribuci v dashboardech.
Časté dotazy
encodeURI vs encodeURIComponent?
encodeURI zachovává :// a ? pro úplné adresy URL; encodeURIComponent kóduje vše pro hodnoty dotazu — rozlišení JS platí koncepčně.
Plus vs %20?
Řetězce dotazů často považují + za mezeru v application/x-www-form-urlencoded — znát kontext.
Lomítka v parametrech?
encodeURIComponenta kóduje / na %2F — vyžaduje se uvnitř hodnoty jednoho parametru.
Místní?
Ano.
IDN domény?
Domény Unicode používají v DNS kód punycode — odděleně od kódování cesty.
HTML entity?
Kódování URL se liší od & Escapování HTML — pro označení použijte htmlEncoderDecoder.