Skip to main content

Krótkie wprowadzenie do kodowania adresów URL

South Korea's biggest motor show roars into action (Kwiecień 2024)

South Korea's biggest motor show roars into action (Kwiecień 2024)
Anonim

Adres URL strony internetowej, zwany również "adresem strony", jest tym, co ktoś mógłby wprowadzić do przeglądarki internetowej w celu uzyskania dostępu do określonej strony internetowej. Podczas przekazywania informacji za pośrednictwem adresu URL musisz upewnić się, że używa tylko określonych dozwolonych znaków. Te dozwolone znaki zawierają znaki alfabetu, cyfry i kilka znaków specjalnych, które mają znaczenie w ciągu URL. Wszelkie inne znaki, które należy dodać do adresu URL, powinny być zakodowane tak, aby nie powodowały problemów podczas podróży przeglądarki w celu zlokalizowania stron i zasobów, których szukasz.

Kodowanie adresu URL

Najczęściej zakodowaną postacią w łańcuchu URL jest postać. Zobaczysz tę postać za każdym razem, gdy zobaczysz znak plus (+) w adresie URL. To reprezentuje charakter przestrzeni. Znak plus działa jako znak specjalny reprezentujący tę przestrzeń w adresie URL. Najczęstszym sposobem zobaczenia tego jest link mailto zawierający temat. Jeśli chcesz, aby obiekt zawierał spacje, możesz zakodować je jako plusy:

mailto: email? subject = this + is + my + subject

Ten fragment tekstu kodującego przekazałby temat "to jest mój podmiot". Znak "+" w kodowaniu zostanie zastąpiony faktycznym kiedy jest renderowany w przeglądarce.

Aby zakodować adres URL, wystarczy zamienić znaki specjalne na ich ciągi kodowania. To prawie zawsze zaczyna się od znaku%.

Kodowanie adresu URL

Ściśle mówiąc, należy zawsze kodować wszelkie znaki specjalne znalezione w adresie URL. Jedną ważną informacją, jeśli czujesz się trochę onieśmielony przez wszystkie te rozmowy lub kodowanie, jest to, że zazwyczaj nie znajdziesz żadnych znaków specjalnych w adresie URL poza ich normalnym kontekstem, z wyjątkiem danych formularza.

Większość adresów URL używa prostych znaków, które są zawsze dozwolone, więc w ogóle nie jest potrzebne kodowanie.

Jeśli przesyłasz dane do skryptów CGI za pomocą metody GET, powinieneś zakodować dane, ponieważ zostaną wysłane za pośrednictwem adresu URL. Na przykład, jeśli piszesz link do promowania kanału RSS, Twój adres URL będzie musiał zostać zakodowany, aby dodać adres URL skryptu, na którym go promujesz.

Co należy zakodować?

Każdy znak, który nie jest literą alfabetu, liczbą lub specjalnym znakiem, który jest używany poza jego normalnym kontekstem, będzie musiał zostać zakodowany na twojej stronie. Poniżej znajduje się tabela typowych znaków, które można znaleźć w adresie URL i ich kodowaniu.

Zarezerwowane kodowanie adresów URL

PostaćCel w adresie URLKodowanie
:Oddzielny protokół (http) od adresu% 3B
/Oddziel domenę i katalogi% 2F
#Oddzielne kotwice%23
?Oddziel ciąg zapytania% 3F
&Oddzielne elementy zapytania%24
@Oddzielić nazwę użytkownika i hasło od domeny%40
%Wskazuje zakodowany znak%25
+Wskazuje spację% 2B
Niezalecane w adresach URL% 20 lub +

Zauważ, że te zakodowane przykłady różnią się od znalezionych za pomocą znaków specjalnych HTML. Na przykład, jeśli chcesz zakodować adres URL znakiem ampersand (&), użyj% 24, co jest pokazane w powyższej tabeli. Jeśli pisałeś HTML i chciałeś dodać znak ampersand do tekstu, nie możesz użyć% 24. Zamiast tego używałbyś albo & lub &, z których oba wypisują & na stronie HTML po renderowaniu. Może się to wydawać początkowo kłopotliwe, ale zasadniczo jest to różnica między tekstem pojawiającym się na samej stronie, która jest częścią kodu HTML, a ciągiem URL, który jest oddzielną jednostką i dlatego podlega innym regułom.

Fakt, że znak "&", jak również wiele innych znaków, może pojawić się w każdym z nich, nie powinien mylić cię z różnicami między nimi.

Oryginalny artykuł Jennifer Krynin. Edytowane przez Jeremy'ego Girarda.