本文主要介紹如何有效解決web請求中的亂碼問題,其實解決方法有很多種,不同的請求型別解決方法也不相同。
1、針對post方式提交的請求如果出現亂碼,可以每次在request解析資料時設定編碼格式:
request.setcharacterencoding(
"utf-8");
也可以使用編碼過濾器來解決,最常用的方法是使用spring提供的編碼過濾器:
在web.xml中增加如下配置(要注意的是它的位置一定要是第乙個執行的過濾器):
charsetfilter
org.springframework.web.filter.characterencodingfilter
encoding
utf-8
forceencoding
true
該過濾器要做的其實就是強制為所有請求和響應設定編碼格式:
request.setcharacterencoding(
"utf-8");
response.setcharacterencoding(
"utf-8");
2、針對get方式的亂碼問題,由於引數是通過url傳遞的,所以上面通過request設定的編碼格式是不起作用的,此時可以在每次發生請求之前對url進行編碼:例如:location.href="/encodeuri"("http://localhost/test/s?name=中文&***=女");
當然也有更簡便的方法,那就是在伺服器端配置url編碼格式:
修改tomcat的配置檔案server.xml:
只需增加 uriencoding="utf-8" 這一句,然後重啟tomcat即可。
相信通過這兩段配置,你再也不用擔心遇到亂碼啦
Get,Post請求中文亂碼問題有效解決方法
本文主要介紹如何有效解決web請求中的亂碼問題,其實解決方法有很多種,不同的請求型別解決方法也不相同。1 針對post方式提交的請求如果出現亂碼,可以每次在request解析資料時設定編碼格式 request.setcharacterencoding utf 8 也可以使用編碼過濾器來解決,最常用的...
關於Get,Post請求中文亂碼問題有效解決方法
本文主要介紹如何有效解決web請求中的亂碼問題,其實解決方法有很多種,不同的請求型別解決方法也不相同。1 針對post方式提交的請求如果出現亂碼,可以每次在request解析資料時設定編碼格式 request.setcharacterencoding utf 8 也可以使用編碼過濾器來解決,最常用的...
get,post請求引數中文亂碼解決
預設情況下,tomcat使用的的編碼方式 iso 8859 1 修改tomcat下的conf server.xml檔案 找到如下 這段 規定了tomcat監聽http請求的埠號等資訊。可以在這裡新增乙個屬性 uriencoding,將該屬性值設定為utf 8,即可讓tomcat 預設iso 8859...