為什么需要對URI進(jìn)行編碼?

 對于Url來說,之所以要進(jìn)行編碼,是因?yàn)閁rl中有些字符會引起歧義。

一般來說,URL只能使用英文字母、阿拉伯?dāng)?shù)字和某些標(biāo)點(diǎn)符號,不能使用其他文字和符號。這是因?yàn)榫W(wǎng)絡(luò)標(biāo)準(zhǔn)RFC 1738做了硬性規(guī)定:

原文:"...Only alphanumerics [0-9a-zA-Z], the special characters "$-_.+!*'()," [not including the quotes - ed], and reserved characters used for their reserved purposes may be used unencoded within a URL."
翻譯:“只有字母和數(shù)字[0-9a-zA-Z]、一些特殊符號“$-_.+!*'(),”[不包括雙引號]、以及某些保留字,才可以不經(jīng)過編碼直接用于URL。”

但是該網(wǎng)絡(luò)標(biāo)準(zhǔn)卻沒有規(guī)定說怎么進(jìn)行編碼,交給了瀏覽器來自己來控制,瀏覽器目前的一個通用做法是除了a-zA-Z0-9.-_以外,都進(jìn)行%替換。

回到頂部

三種編碼方式的介紹

Javascript中提供了3對函數(shù)用來對Url編碼以得到合法的Url,它們分別是

延伸閱讀

學(xué)習(xí)是年輕人改變自己的最好方式-Java培訓(xùn),做最負(fù)責(zé)任的教育,學(xué)習(xí)改變命運(yùn),軟件學(xué)習(xí),再就業(yè),大學(xué)生如何就業(yè),幫大學(xué)生找到好工作,lphotoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動軟件開發(fā)培訓(xùn),網(wǎng)站設(shè)計(jì)培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)學(xué)習(xí)是年輕人改變自己的最好方式