前台傳中文到後台Controller亂碼問題的解決

2021-09-18 00:09:06 字數 591 閱讀 4456

js傳中文引數到controller的時候出現了亂碼。

檢視了web.xml中的characterencodingfilter配置沒有問題。

而且在測試環境上跑的時候功能正常但是在開發環境卻有問題。嘗試了在**中新增:

request.setcharacterencoding("***x")之類的方法也不可行。

但是

new string(name.getbytes("iso-8859-1"),"utf-8");
可行。

查了一些資料後了解到tomcat對於post和get的處理方式不同。

所以過濾器和request.setcharacterencoding("***x")之類的方法對post方法可行,但是對get方法沒有作用。

所以想要解決這個問題要修改tomcat的配置檔案server.xml

找到這段資訊

然後再最後加上 uriencoding="utf-8" 即可。

總結:post方法受過濾器以及setcharacterencoding方法的限制,但是get方法不受,所以要修改get方式的亂碼問題,要從tomcat的配置檔案入手解決。

以上,愚見。

json從前台到後台傳遞

前台json格式的資料如何傳入後台 1.將要傳入後台的資料組裝成json格式的字串 var jsonstr 2.使用jquery的ajax請求後台 ajax success function data error function msg 3.後台資料的接收與解析 string jsonstr se...

JS傳中文到Action中出現中文亂碼問題?

今天紀錄乙個小問題 如題,在頁面文字框或者得到的 中文值 亂碼,然後去資料庫查詢返回 失敗!找了很多方法,發覺不適用。最後發現解決方法就一句話。解決方法 在返回的action中,對str字串做如下改動,就ok str new string str.getbytes iso 8859 1 utf 8 ...

前台傳值到後台,然後再返回給前台

前台就不多說了可以自己寫 js 寫一些input 的響應函式,然後通過post的方法傳到某個url。後台採用的thinkphp的框架,重要的一點是要先熟悉thinkphp 的 url的路由是怎麼跳轉的。前台可以通過 form表單 提交 到乙個url 對應的url 在後台php 裡的處理函式 用pos...