该用户从未签到
|
编码问题(在ajax应用当中). {$ Y& t1 V6 T% q: u
1)如果采用post方式向服务器发送请求,会使用
6 ^' O/ A' z# m; H- K "utf-8"对请求中的数据进行编码。在服务器端+ \! x$ A- U" p- T1 A5 ]! j
,需要使用request.setCharacterEncoding("utf-8");- J% X0 x$ E( A, |/ ~( I
去解码即可。6 E" Y2 o, ~2 U3 z0 E+ ~5 y& [
2)如果采用get方式向服务器发送请求,ie会
* X* s; O, ?2 {5 C a$ i; h4 i, } 使用"gbk"/"gb2312"对请求中的数据进行编码。
6 d( }+ b& F8 Q 而firefox会使用"utf-8"来编码。" ^( ~$ N& J c
解决方式:
8 _8 M: F2 z5 j @* d step1 找到tomcat的server.xml文件(TOMCAT_HOME/
( E# d) |6 R, @. f$ Q+ x) ` conf/server.xml)。添加"URIEncoding="utf-8";+ `0 R! F& A$ g; w$ {" f
作用是告诉服务器,对于get请求中的数据,使用
" N; ]( G% c% ~2 r- D "utf-8"解码。7 Z S( o6 F. o4 f
step2 对请求地址使用encodeURI()函数进行5 p- `3 y. ]4 {! ~) G/ N9 S" u6 ]4 n
处理,该函数的作用是:对请求地址中的中文. p; ? @6 B5 J; K0 [( }
进行"utf-8"编码。 |
|