Maikling Panimula sa Pag-encode sa URL

URL ng isang website, karaniwang kilala bilang "address ng website", ay kung ano ang ipapasok ng isang tao sa isang web browser upang ma-access ang isang partikular na website. Kapag nagpapasa ka ng impormasyon sa pamamagitan ng isang URL, kailangan mong tiyakin na gumagamit lamang ito ng tukoy na pinapayagang mga character. Ang mga pinahihintulutang mga character na ito ay kinabibilangan ng mga alpabetikong character, numeral, at ilang mga espesyal na character na may kahulugan sa URL string. Ang anumang iba pang mga character na kailangang idagdag sa isang URL ay dapat ma-encode upang hindi sila maging sanhi ng mga problema sa paglalakbay ng browser upang mahanap ang mga pahina at mga mapagkukunan na iyong hinahanap.

Pag-encode ng isang URL

Ang pinakakaraniwang naka-encode na character sa URL string ay ang character na . Nakikita mo ang character na ito kapag nakita mo ang isang plus-sign (+) sa isang URL. Ito ay kumakatawan sa espasyo ng character. Ang plus sign ay gumaganap bilang isang espesyal na character na kumakatawan sa espasyo sa isang URL. Ang pinaka-karaniwang paraan ay makikita mo ito ay nasa isang link ng mailto na kinabibilangan ng isang paksa. Kung gusto mo ang paksa na magkaroon ng puwang sa loob nito, maaari mong i-encode ang mga ito bilang plus:

mailto: email? subject = ito + ay + aking paksa

Ang bit ng pag-encode na teksto ay magpapadala ng paksa ng "ito ang aking paksa". Ang "+" na character sa encoding ay papalitan ng isang aktwal na kapag ito ay nai-render sa browser.

Upang i-encode ang isang URL, palitan mo lang ang mga espesyal na character sa kanilang encoding string. Ito ay laging magsisimula sa isang% na karakter.

Pag-encode ng isang URL

Mahigpit na nagsasalita, dapat mong palaging i-encode ang anumang espesyal na character na makikita sa isang URL. Isang mahalagang tala, kung ikaw ay medyo nahihiya sa pamamagitan ng lahat ng pag-uusap o pag-encode na ito, ay sa pangkalahatan ay hindi mo mahanap ang anumang mga espesyal na character sa isang URL sa labas ng kanilang normal na konteksto maliban sa data ng form.

Ginagamit ng karamihan sa mga URL ang mga simpleng character na palaging pinapayagan, kaya walang kinakailangang pag-encode sa lahat.

Kung magsumite ka ng data sa CGI script gamit ang GET na paraan, dapat mong i-encode ang data dahil ipapadala ito sa URL. Halimbawa, kung sumusulat ka ng isang link upang itaguyod ang isang RSS feed , kailangang ma-encode ang iyong URL upang idagdag sa URL ng script na itinataguyod mo ito.

Ano ang Dapat Maging Naka-encode?

Ang anumang karakter na hindi isang alpabetikong character, isang numero, o isang espesyal na character na ginagamit sa labas ng normal na konteksto nito ay kailangang ma-encode sa iyong pahina. Nasa ibaba ang isang talaan ng mga karaniwang character na maaaring matagpuan sa isang URL at ang kanilang pag-encode.

Naka-encode ang Mga Nakarating na Character URL

Character Layunin sa URL Pag-encode
: Paghiwalayin ang protocol (http) mula sa address % 3B
/ Paghiwalayin ang domain at direktoryo % 2F
# Paghiwalayin ang mga anchor % 23
? Paghiwalayin ang query string % 3F
& Paghiwalayin ang mga elemento ng query % 24
@ Paghiwalayin ang username at password mula sa domain % 40
% Nagpapahiwatig ng isang naka-encode na karakter % 25
+ Nagpapahiwatig ng espasyo % 2B
Hindi inirerekumenda sa mga URL % 20 o +

Tandaan na iba ang mga naka-encode na halimbawa kaysa sa nakikita mo sa mga espesyal na character ng HTML . Halimbawa, kung kailangan mong i-encode ang isang URL na may isang ampersand (&) na character, gagamitin mo ang% 24, na kung saan ay ipinapakita sa talahanayan sa itaas. Kung nagsusulat ka ng HTML at gusto mong magdagdag ng isang ampersand sa teksto, hindi mo magagamit ang% 24. Sa halip, gagamitin mo ang alinman sa "& amp;"; o "& # 38;", na parehong isusulat ang & sa pahina ng HTML kapag nai-render. Ito ay maaaring mukhang nakalilito sa simula, ngunit ito ay karaniwang ang pagkakaiba sa pagitan ng teksto na lumilitaw sa mismong pahina, na bahagi ng HTML code, at ang URL string, na kung saan ay isang hiwalay na entidad at samakatuwid ay napapailalim sa iba't ibang mga panuntunan.

Ang katotohanan na ang "&" na character, pati na rin ang maraming iba pang mga character, ay maaaring lumitaw sa bawat isa ay hindi dapat malito ka sa mga pagkakaiba sa pagitan ng dalawa.

Orihinal na artikulo ni Jennifer Krynin. Ini-edit ni Jeremy Girard.