引數傳遞中編碼問題(Get Post 方式)(三)

2022-03-28 09:37:49 字數 703 閱讀 9746

自己總結的:

get方式:

1、提交方式為get時,資料是放在請求header頭中的,且將資料與url拼接後,瀏覽器會對拼接後的url進行編碼,編碼方式為瀏覽器預設的編碼,

2、然後再向伺服器傳送請求,伺服器在進行解碼,並且get方式不會向伺服器端傳送編碼方式

3、請求得到響應後,伺服器再將結果資料進行編碼,編碼方式為伺服器設定的編碼

4、客戶端得到結果資料後,在進行解碼;

post方式:

1、提交方式為post時,資料是放在請求body體中,客戶端根據網頁的contenttype("text/html; charset=utf-8")的進行編碼

2、然後傳送到伺服器,在伺服器端的程式中我們可以通過request.setcharacterencoding() 設定編碼,

然後通過request.getparameter獲得正確的資料。

注意:對於get方式,伺服器端的程式中我們無法通過request.setcharacterencoding()設定編碼

tomcat預設預設用的是 iso-8859-1

通過uriencoding="utf-8"

/>進行更改

客戶端瀏覽器或者應用程式中的jsp頁面--》servlet伺服器--》 兩者編碼要一致直,整個專案中編碼方式要保持一致

有的瀏覽器總是以utf-8的編碼方式進行編碼,高階瀏覽器已取消此限制,如firefox等

ajax中傳遞中文引數的編碼問題

遇到問題 在使用xhr發出請求時,請求的url中引數帶中文,這時在後台解析request得不到中文 如 request new activexobject microsoft.xmlhttp request.open get url 中我的url需要帶中文引數 直接加引數是在後台解析不出來的,所以我...

form action中傳遞引數的問題

我做了乙個form 裡面這樣寫的 然後我在後台取orderidz總是取不到,後來上網查了一下我在form中加上了method post 在後台獲取時用 就可以取到了。查了一下原因 表單提交中get和post方式的區別有5點 1.get是從伺服器上獲取資料,post是向伺服器傳送資料。2.get是把引...

Python中函式引數傳遞問題

先上兩個例子 a 1 deffun a a 2fun a print a 結果為1 fun a 中的a,可以看做函式中的形參,可以用任何字元代替 fun aaa a deffun a fun a print a 結果為 1 所有的變數都可以理解是記憶體中乙個物件的 引用 或者,也可以看似c中void...