Stručný úvod do kódovania URL

Webová adresa webových stránok, tiež bežne známa ako "webová adresa", je to, čo niekto vstúpi do webového prehliadača, aby získal prístup na konkrétnu webovú stránku. Keď zadávate informácie prostredníctvom adresy URL, musíte sa uistiť, že používajú iba špecifické povolené znaky. Tieto povolené znaky obsahujú abecedné znaky, číslice a niekoľko špeciálnych znakov, ktoré majú význam v reťazci adresy URL. Akékoľvek ďalšie znaky, ktoré je potrebné pridať do adresy URL, by mali byť zakódované tak, aby počas prehliadania prehliadača neviedli k problémom nájsť stránky a zdroje, ktoré hľadáte.

Kódovanie adresy URL

Najčastejšie kódovaný znak v reťazci adresy URL je znak . Vidíte túto znak vždy, keď sa v adrese URL zobrazí značka plus (+). Toto predstavuje priestorový znak. Značka plus má zvláštny charakter a predstavuje takýto priestor v adrese URL. Najčastejším spôsobom, ako to uvidíte, je v odkazu mailto, ktorý obsahuje predmet. Ak chcete, aby objekt obsahoval medzery, môžete ich kódovať ako pluses:

mailto :? predmet e-mailu = to + je + môj + predmet

Tento bit kódovania textu by vysielal predmet "to je moja téma". Znak "+" v kódovaní bude nahradený aktuálnym , keď sa vykreslí v prehliadači.

Ak chcete kódovať adresu URL, stačí nahradiť špeciálne znaky pomocou ich kódovacieho reťazca. Takmer vždy začína znak%.

Kódovanie adresy URL

Presne povedané, vždy by ste mali kódovať všetky špeciálne znaky nájdené v adrese URL. Jedna dôležitá poznámka, v prípade, že sa cítite trochu zastrašená všetkými týmito rozhovormi alebo kódovaním, je, že všeobecne nenájdete žiadne špeciálne znaky v adrese URL mimo ich bežného kontextu okrem údajov o formulároch.

Väčšina adries URL používa jednoduché znaky, ktoré sú vždy povolené, takže vôbec nie je potrebné kódovanie.

Ak odosielate údaje do skriptov CGI pomocou metódy GET, mali by ste zakódovať dáta tak, ako budú odoslané cez URL. Napríklad, ak napíšete odkaz na propagáciu RSS kanálu , vaša URL bude musieť byť kódovaná, aby sa pridala k URL skriptu, na ktorú ju propagujete.

Čo treba kódovať?

Každý znak, ktorý nie je abecedný znak, číslo alebo špeciálny znak, ktorý sa používa mimo bežného kontextu, bude musieť byť zakódovaný na vašej stránke. Nižšie je uvedená tabuľka bežných znakov, ktoré možno nájsť v adrese URL a ich kódovaní.

Vyhradené znaky URL kódovanie

znak Účel v adrese URL kódovanie
: Samostatný protokol (http) z adresy % 3B
/ Oddeľte doménu a adresáre % 2F
# Samostatné kotvy % 23
? Oddeľte reťazec dopytu % 3F
& Oddeľte prvky dopytu % 24
@ Oddeľte používateľské meno a heslo z domény % 40
% Označuje kódovaný znak % 25
+ Označuje medzeru % 2B
Neodporúča sa v adresách URL % 20 alebo +

Upozorňujeme, že tieto kódované príklady sú odlišné od toho, čo nájdete s špeciálnymi znakmi HTML . Ak napríklad chcete kódovať adresu URL s znakom ampersand (&), použite% 24, čo je to, čo je uvedené v tabuľke vyššie. Ak ste písali HTML a chcete vložiť ampersand do textu, nemôžete použiť% 24. Namiesto toho by ste použili buď "& amp;"; alebo "& # 38;", pričom obidva z nich by vypisovali & na HTML stránke pri vykreslení. Zdá sa, že to môže byť na prvý pohľad nejasné, ale je v podstate rozdiel medzi textom, ktorý sa zobrazuje na samotnej stránke, ktorá je súčasťou kódu HTML, a reťazcom adresy URL, ktorý je samostatnou entitou, a preto podlieha odlišným pravidlám.

Skutočnosť, že znak "&", rovnako ako mnoho ďalších znakov, sa môže objaviť v každom z nich by nemal zamieňať vás na rozdiely medzi týmito dvoma.

Originálny článok od Jennifer Krynin. Upravil Jeremy Girard.