URL kodējums
Dažas rakstzīmes nevar parādīties URL (piemēram, atstarpes), citām URL ir īpaša nozīme. Mums ir jākonvertē speciālās rakstzīmes, lai tās atbilstu W3 URI specifikācijā (RFC 3986) definētajai sintaksei. Tas nozīmē, ka URL satur tikai īpašas ASCII rakstzīmes apakškopu: mums pazīstamos burtus un ciparus, kā arī dažas rezervētas rakstzīmes, kas URL tiek izmantotas kā vadības rakstzīmes.
URL kodēšanas apstrāde JavaScript
JavaScript gan encodeURIComponent(), gan encodeURI() iebūvētās funkcijas var kodēt URL, aizstājot URL rezervētās rakstzīmes ar UTF-8 kodētajām rakstzīmēm.
Lielākā daļa pārlūkprogrammu automātiski kodē URL, piemēram, kodējot atstarpes uz %20, bet vienmēr ir daži izņēmumi. Par laimi, pārlūkprogrammas nodrošina iebūvētas URL kodēšanas un dekodēšanas funkcijas: encodeURI, encodeURIComponent un decodeURI, decodeURIComponent. Jautājums ir par to, kā izmantot šīs funkcijas un kāda ir atšķirība starp tām.
encodeURI()
URL kodēšana virkne ir vienkārša, vienkārši izsauciet encodeURI un nododiet virkni, kuru vēlaties kodēt. Šī funkcija atgriež kodēto URL.
decodeURI()
Šī funkcija dekodē un izsauc funkciju decodeURI, nododot kodēto virkni, un pēc tam atgriež dekodēto normālo virkni.
encodeURIComponent()
Funkcija encodeURIComponent ir jāizmanto, lai kodētu vaicājuma virknes parametru vērtības. Atšķirība starp encodeURI un encodeURIComponent ir tāda, ka encodeURIComponent kodē visu virkni, bet encodeURI ignorē protokola prefiksu ('http://'), kā arī domēna nosaukumu. encodeURIComponent ir paredzēts, lai kodētu visu, bet encodeURI ignorē URL domēna nosaukuma daļu. Kad jūsJa vēlaties kodēt parametra vērtību URL, atlasiet funkciju encodeURIComponent。
decodeURIComponent()
Funkcija decodeURIComponent dekodēs funkcijas encodeURIComponent kodēto virkni un atjaunos tās parasto saturu.
Pārskats:
|