關於URL編碼

2021-09-16 14:22:06 字數 1218 閱讀 6836

1.encodecomponent編碼url,url不能直接使用,需要編碼

var rlt = "";

var url = '';

var params = ;

for (var i in params)

for (var i in params)

console.log(rlt);

1.url就是**,只要上網,就一定會用到.

只有字母和數字[0-9a-za-z],一些特殊符號$-_.+!*'(),以及某些保留字,才可以不經過編碼直接用於url.

2.這意味著,如果url中有漢字,就必須編碼後使用,但是麻煩的是,rfc1738沒有規定具體的編碼方法,

而是交給應用程式(瀏覽器)自己決定,這導致'url編碼'成為了乙個混亂的領域.

3.包括:ajax請求url位址,瀏覽器上直接用get或post發出http請求,**路徑中包含漢字,查詢字串包含漢字.

4.使用js先對url編碼,然後再向伺服器提交,不給瀏覽器插手的機會,

因為js的輸出總是一致的,所以就保證了伺服器得到的資料是格式統一的.

escape()不能直接用於url編碼,他的真正作用是返回乙個字串的unicode編碼值.

1.encodeuri()是js中真正用來對url編碼的函式

2.它著眼於對整個url進行編碼,因此除了常見的符號以外,對其他一些在**中有特殊含義的符號;/?:@&=+$,#也不進行編碼,

編碼後,它輸出符號的utf-8形式,並且在每個位元組前加上%

與encodeuri()的區別是,它用於對url的組成部分進行個別編碼,而不用於對整個url進行編碼.

因此,;/?:@&=+$,#這些在encodeuri()中不被編碼的符號,在encodeuricomponent中統統會被編碼.

var test1 = encodeuricomponent(test);

var test2 = encodeuri(test);

console.log(test); //

var test3 = decodeuricomponent(test1);

var test4 = decodeuri(test2);

console.log(test3);

console.log(test4);

var test5 = escape(test);

var test6 = unescape(test5);

關於java web中字元編碼和url編碼的理解

首先要區分字元編碼和 url編碼的區別,page 指令中指定的字元編碼是儲存頁面的時使用的編碼,url編碼是傳輸請求引數時候使用的編碼。字元編碼 web頁面本身的 page 指令中 content type text html charset gbk 指定的是生成頁面 即響應頁面也就是本頁面 的字元...

URL編碼 解碼

url編碼 通過頁面傳輸資料給伺服器時,如果包含了一些特殊字元是無法傳送的。這時就需要先把要傳送的資料轉換成url編碼格式,再傳送給伺服器。伺服器會自動識別出資料是使用url編碼過的,然後會自動把資料轉換回來 url編碼 解碼的4個方法 encodeurl encodeurlcomponent de...

URL 字元編碼

url 編碼會將字元轉換為可通過網際網路傳輸的格式。web 瀏覽器通過 url 從 web 伺服器請求頁面。url 是網頁的位址,比如 url 只能使用 ascii 字符集來通過網際網路進行傳送。由於 url 常常會包含 ascii 集合之外的字元,url 必須轉換為有效的 ascii 格式。url...