主要是因為tomcat預設的伺服器端編碼是iso-8859-1,因此使用者請求伺服器時,常出現亂碼1.get請求方式中文亂碼解決
解決方案:
① 修改tomcat預設的編碼方式為"utf-8"1)修改配置檔案② 分別對請求行的漢字進行編碼和解碼
在tomcat的server.xml裡把
修改為
2)對請求行進行編譯碼
例如來自頁面的乙個get請求:
window.location.href =
getcontextpath()
+"/manage/user/detail?name="
+encodeuri
(encodeuri
("小明"))
;
服務端:
string name = request.
getparameter
("name");
orgname = urldecoder.
decode
(name,
"utf-8"
);
通過encodeuri進行編碼,通過urldecoder的decode方法進行解碼2.post請求方式中文亂碼解決
方案1:
request.
setcharacterencoding
("utf-8"
);
方案2:(配置字元過濾器)
>
>
字符集過濾器description
>
>
encodingfilterfilter-name
>
>
org.springframework.web.filter.characterencodingfilter
filter-class
>
>
>
字符集編碼description
>
>
encodingparam-name
>
>
utf-8param-value
>
init-param
>
filter
>
>
>
encodingfilterfilter-name
>
>
/*url-pattern
>
>
web請求和響應亂碼
通常情況下,在對瀏覽器做出響應的同時,會設定字元編碼,因為預設的編碼是gbk或則iso 8859 1,那麼瀏覽器輸出中文時,會顯示亂碼,所以需要設定中文的字元編碼格式,這裡有兩種 response.setcontenttype txxt html charset utf 8 response.set...
Web請求和響應
webrequest是個抽象類 不能例項化。webrequest是類裡有個返回值為webrequest型別的靜態方法create string requesturistring webrequest request webrequest.create 發出乙個請求 webresponse respo...
完整的web請求與響應
當我們在瀏覽器的位址列輸入 www.linux178.com 然後回車,回車這一瞬間到看到頁面到底發生了什麼呢?整個流程如下 1 網域名稱解析 2 發起tcp的3次握手 3 建立tcp連線後發起http請求 4 伺服器響應http請求,瀏覽器得到html 5 瀏覽器解析html 並請求html 中的...