1.post请求
1)为什么会有乱码?
浏览器提供的ajax对象,在发送post请求时,会将中文参数值按照“utf-8”来进行编码。
服务器默认会使用“iso-8859-1”解码。
2)如何解决?
request.setCharacterEncoding("utf-8");
这只能用于post请求
2)get请求 (这个是属于URL中参数)
1)为什么会有乱码?
ie浏览器提供的ajax对象,会对中文参数使用“gbk”来编码,而其它浏览器使用"utf-8"来编码。
而服务器端默认会使用“iso-8859-1”解码。
2)如何解决?
Step1,服务器使用"utf-8"来解码。
可以修改tomcat/conf/servlet.xml
<Connector URIEncoding="utf-8">
(就是在tomcat的servlet.xml配置文件中,找到Connector标签,加上
URIEncoding属性,并把值设置为utf-8;这方法只对浏览器地址栏的参
数编码有效。即只对URL参数有效)
Step2,使用encodeURI函数对请求参数进行统一编码。
注:这个encodeURI函数是javascript内置的函数(类似alert),会对请求地址中的中文
参数值使用"utf-8"来编码。