Get,Post請求中文亂碼問題有效解決方法

2021-07-24 09:39:29 字數 1061 閱讀 8232

本文主要介紹如何有效解決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...