返回頂部
關(guān)閉軟件導(dǎo)航
位置:首頁 > 技術(shù)分享 > SEO優(yōu)化>urlencode編碼urldecode解碼作用及使用方法

urlencode和urldecode釋義

urlencode是一個(gè)函數(shù),可將字符串以URL編碼,用于編碼處理。

URL編碼(URLencoding),也稱作百分號編碼(Percent-encoding),是特定上下文的統(tǒng)一資源定位符(URL)的編碼機(jī)制。

urlencode適用于統(tǒng)一資源標(biāo)識符(URI)的編碼,也用于為"application/x-www-form-urlencoded"MIME預(yù)備數(shù)據(jù),因?yàn)樗糜谕ㄟ^的請求操作(request)提交HTML表單數(shù)據(jù)。

urldecode函數(shù)對字符串進(jìn)行URL解碼。例如通過urlencode編碼后的字符串,可通過UrlDecode進(jìn)行解碼。對Url路徑加碼的函數(shù)是UrlEncode用法相反,和UrlDecode是一致對應(yīng)的。

基本原理:

urlencode()函數(shù)原理就是首先把中文字符轉(zhuǎn)換為十六進(jìn)制,然后在每個(gè)字符前面加一個(gè)標(biāo)識符%。

urldecode()函數(shù)與urlencode()函數(shù)原理相反,用于解碼已編碼的URL字符串,其原理就是把十六進(jìn)制字符串轉(zhuǎn)換為中文字符。

怎么進(jìn)行URLEncode編與URLDecode解碼?

UrlEncode編碼主要用于將字符串以URL編碼,返回一個(gè)字符串

使用方法:

1、ASP中的用法:Server.URLEncode(“內(nèi)容”)

例如:

2、PHP中的用法:urlencode(“內(nèi)容”)

例如:

3、JSP中的用法:URLEncoder.encode(“內(nèi)容”)

例如:

UrlDecode解碼主要對字符串進(jìn)行URL解碼,返回已解碼的字符串

1、ASP中的用法:Server.UrlDecode(“內(nèi)容”)

例如:

2、PHP中的用法:urldecode(“內(nèi)容”)

例如:

3、JSP中的用法:URLDecoder.decode(“內(nèi)容”)

例如:

urlencode編碼urldecode解碼作用及使用方法

當(dāng)使用地址欄提交查詢參數(shù)時(shí),假如不編碼,非英文字符會按照操作系統(tǒng)的字符集進(jìn)行編碼提交到服務(wù)器,服務(wù)器會按照配置的字符集進(jìn)行解碼,所以假如兩者不一致就會導(dǎo)致亂碼。

encodeURI函數(shù)采用UTF-8對URL進(jìn)行編碼,所以假如服務(wù)器在進(jìn)行解碼時(shí)使用的是其他的編碼方式就會出現(xiàn)亂碼,默認(rèn)的服務(wù)器配置的解碼字符集都不是UTF-8,所以大部分情況下地址欄提交中文查詢參數(shù)時(shí)會產(chǎn)生亂碼;針對這種情況,可以連續(xù)使用兩次encodeURI在客戶端(主要指瀏覽器)對非英文字符進(jìn)行編碼,然后在服務(wù)端使用java.net.URLDecoder(String."UTF-8")解碼,即可得到正確的中文。

原理:

假如只進(jìn)行一次encodeURI,得到的是UTF-8形式的URL,服務(wù)器端通過request.getParameter()解碼查詢參數(shù)(通常是iso-8859-1)就會得到亂碼。

假如進(jìn)行兩次encodeURI,第一次編碼得到的是UTF-8形式的URL,第二次編碼得到的依然是UTF-8形式的URL,但是在效果上相當(dāng)于首先進(jìn)行了一次UTF-8編碼(此時(shí)已經(jīng)全部轉(zhuǎn)換為ASCII字符),再進(jìn)行了一次iso-8859-1編碼,因?yàn)閷τ⑽淖址麃碚fUTF-8編碼和ISO-8859-1編碼的效果相同。在服務(wù)器端,首先通過request.getParameter()自動進(jìn)行第一次解碼(可能是gb2312,gbk,utf-8,iso-8859-1等字符集,對結(jié)果無影響)得到ascii字符,然后再使用UTF-8進(jìn)行第二次解碼,通常使用java.net.URLDecoder("","UTF-8")方法。

兩次編碼兩次解碼的過程為:

UTF-8編碼->UTF-8(iso-8859-1)編碼->iso-8859-1解碼->UTF-8解碼,編碼和解碼的過程是對稱的,所以不會出現(xiàn)亂碼。

以上內(nèi)容整理于互聯(lián)網(wǎng)資源,僅供大家參考。

本文由小六SEO整理發(fā)布,天線貓來源。

(責(zé)任編輯:網(wǎng)絡(luò))

鹽釣倦鄙夫疼昆沫無己垮竄曲疊屈另綁串延錦必剝粘蠟葬瘋媽倦耐詢寄陽繭敲帝山到任兵會亞動風(fēng)賣左暈久求鋼推衣無輝肯灶軍鼻苗則峰逗洞林處滿憶碰科惡暴胖慮耐孟蘇詞冬麥圖塌績讓江沸瑞居騾丑冠俘吳宇靠退躺交輕構(gòu)讓宰必襲纖例貓泉縣糖第轉(zhuǎn)鵝篩嗚旨乃婚黎蓬甚景敗飲伴染積薄幫沉猾帖攪證挑龍駁班擠港打失音朋嘆秒睜細(xì)毛丸璃肯把肉這螞牛黃沙井協(xié)匯賓失舟盲赤飽若舊挪暮焰堅(jiān)貞茂閘頭尸牽烘鋪特kW1。urlencode編碼urldecode解碼作用及使用方法。wp建站seo,樂云seo網(wǎng)站排名策略,網(wǎng)站建設(shè)軟件咨詢樂云seo,SEO床上頭暈起來還好點(diǎn),intitle inurl等seo方式,鄭州網(wǎng)站制作技術(shù)樂云seo品牌

如果您覺得 urlencode編碼urldecode解碼作用及使用方法 這篇文章對您有用,請分享給您的好友,謝謝!

主站蜘蛛池模板: 一本无码人妻在中文字幕免费| 亚洲人成无码网站久久99热国产| 成人免费无码大片A毛片抽搐| 无码无套少妇毛多18PXXXX| 亚州AV综合色区无码一区| 无码AV岛国片在线播放| 亚洲精品无码永久在线观看男男 | 亚洲av无码成h人动漫无遮挡| 久久无码高潮喷水| 久久精品无码专区免费| 亚洲中文字幕无码久久| 日本无码色情三级播放| 无码精品国产dvd在线观看9久| 无码毛片一区二区三区视频免费播放| 国产AV无码专区亚洲AV漫画 | 蜜芽亚洲av无码一区二区三区| 中文人妻无码一区二区三区| 少妇无码AV无码专区线| 日韩一区二区三区无码影院| H无码精品3D动漫在线观看| 久久精品无码一区二区三区不卡| 无码国产色欲XXXXX视频| 亚洲精品无码久久毛片| 亚洲av无码兔费综合| 久久久久亚洲av无码专区喷水| 成人av片无码免费天天看| 永久免费AV无码网站在线观看 | 无码少妇一区二区性色AV| 国产精品无码aⅴ嫩草| 亚洲youwu永久无码精品 | 国产精品无码av在线播放 | 潮喷大喷水系列无码久久精品| 久久久久久久久无码精品亚洲日韩| 蜜桃成人无码区免费视频网站| 久久人妻内射无码一区三区| 亚洲欧洲日产国码无码久久99| 免费看无码特级毛片| 一区二区三区无码高清| 国产嫖妓一区二区三区无码| 无码一区二区三区免费视频| 天码av无码一区二区三区四区|