Get提交方式中文亂碼

夢想天空格外藍發表於2020-10-17

Get提交方式中文亂碼

  今天在servlet使用中,在Get方法中獲取提交的中文引數,發現是亂碼,我用的是Tomcat7。

  在Tomcat9中:

  • get方式的引數是放在請求頭中,而Tomcat9對請求頭的解碼方式預設是utf8,所以get方式不會中文亂碼。
  • post方式的引數是放在請求體中,而Tomcat對請求體的解碼方式預設是iso-8859-1,此時就會出現中文亂碼

 

而我用Tomcat7出現了中文亂碼,用以下程式碼解決問題:

String goodsname = new String(request.getParameter("name").getBytes("ISO-8859-1"), "UTF-8");

這樣我定義的goodsname獲取到的就是正常顯示的中文

相關文章