Têkiliya Navnîşana URL-encoding

Navnîşana malpera malperê, bi gelemperî wekî "navnîşa malpera" tê naskirin, ew e ku kî wê kesê gerokê navnîşê tête navnîşanê da ku ji bo malpera taybetek taybet bigihîje. Dema ku hûn agahdariyê bi navnîşana URL re derbas bibin, hûn hewce bike ku ew tenê tenê lîstikên destûrkirî bikar bînin. Di vê deverên ku di navnîşên URL-ê de wateya wateyê deverên tîpên alfabetî, hejmaran, û çend taybetmendiyên taybetî hene. Kesên din ên ku di navnîşana URLê de bêne çêkirin divê encodî bibin ku ew di dema dema gerdûnerê gerdûnî da ku hûn rûpel û çavkaniyên ku hûn digerin pirsgirêk bibînin.

Navekî URL

Di URL stringê de gelemperî encoded tête ye character. Hûn ku hûn di navnîşana URL-plus (+) de heval bibînin. Ev nimûne nîşanmendiya qada cih. Sign-in wekî wekî taybetmendiyek taybet pêk tê de nîşan dide ku di navnîşan de URL. Riya herî gelemperî ku hûn bibînin ev di girêdana mailto de ye ku di mijara mijarê de ye. Heke tu dixwazî ​​mijara ku li cîhên cîhanê bixwaze bixwaze, hûn dikarin wan wek qulasan encode bikin:

mailto: email? mijarê = ev + + + min + mijarê

Vê nivîsê hûrbûrkirina nivîskî dê "mijara min e" ye. Di kodê de "+" krîter dê dê bi qeletek rastîn veguherîne dê dema ku ew di gerokê de tête kirin.

Ji bo navekî URLê, hûn bi hêserek taybetmendiyên bi tevlî stringê wan veguherînin. Ev ê hema hema her tim bi lîstika%% dest pê dike.

Navekî URL

Bi hişk dipeyivin, divê hûn herdem di navnîşana URL-ê de her kesek taybet nîşan bidin. Ji ber ku hûn bi hemî vê gotûbêja an an encoding de bitirsînin, ew e ku hûn bi gelemperî navnîşanek taybet in URL di derveyî forma daneyê de nîqaşên normal ên xwe nabînin.

Gelek URLan bikarhênerên hêsan ên bikar anîn ku her dem herdem bi destûr têne bikar bînin, ji ber ku encam nabe hewce ne.

Heke hûn bi rêbazên GET re bikar bînin, daneyên daneyên CGI bikar bînin, divê hûn daneyên daneyên ku ew ê di ser URLê şandin. Ji bo nimûne, heke hûn pêwendiya RSS-ê pêşveçûnê binivîsin, URL-ê wê hewce dike ku hûn bi navnîşana URL-ê ya nivîskî zêde bike encodekirin.

Divê çi were encod kirin?

Her kesayetiyek ku ne nakterek alfîtîkî ye, hejmarek, an navek taybetiyek ku ji derveyî nermalava wê tê bikaranîn, divê hewceyê di nav rûpelê de encodî bibin. Li jêr kelekek nifşên hevpar e ku di nav URL û encodeya wan de bibînin.

Nîşaneyên URL-ê encoding-parastî

Şexsîyet Purpose in URL Encoding
: Protokolê (http) ji navnîşana navnîşanê % 3B
/ Dokument û rêberên cuda cuda bikin % 2F
# Hevpeymanan vekin % 23
? String question % 3F
& Pirsên pirsên cuda hene % 24
@ Navê bikarhêner û şîfre ji nav domain % 40
% Taybetmendiyek encodek nîşan dide % 25
+ Cîhek navnîşan dike % 2B
Di URLan de ne pêşniyar kirin % 20 an +

Têbînî ku mînakên van encodeyên cuda yên ku hûn bi lîstikên taybetî yên HTML re peyda ne hene . Ji bo nimûne, eger hûn bi URL-ê ampersand (&) re têkildar bikin, hûn ê 24% bikar bînin, kîjan di binê maseyê de têne nîşandan. Heke hûn HTML-ê nivîsandin û hûn dixwazin ku ampersand bi nivîskî re zêde bikin, hûn nikarin% 24 bikar bînin. Li gorî wê, hûn ê bikar anîna "& amp;"; an "& # 38;", herdu ku dê rûpelê HTML-ê binivîse. Ew dibe ku di destpêkê de şaş berbiçav, lê ev yek di nav tekstê de, di heman rûpelê de ye, kîjan kodê HTML-ê ye û strateya URL-ê ye, ku yekîtiyek cuda ye û ji ber ku rêbazên cûda hene.

Rastiya ku xemgîniya "&", herweha gelek xemgîn, dikarin di her kes de bêne xuya kirin, divê hûn di navbera du herdu nakok nabînin.

Gotara rastîn ji Jennifer Krynin. Edited by Jeremy Girard.