转自:http://pcwanli.blog.163.com/blog/static/453156112010111382627892/
发生这个情况,首先查看Web服务器的编码。比如: 使用tomcat,可以查看
conf/server.xml 文件中<Connector/>标签中有没有设置URIEncoding,如果有就是根据这个编码做转换,如果没有这个默认为“ISO-8059”。如果URIEncoding="GBK",后台代码如下:
Java代码
1. String test = request.getParameter("test"); // 前端传回来的中文字符
2. test = new String(test .getBytes("gbk"), "utf-8"); // 转成UTF-8格式
String test = request.getParameter("test"); // 前端传回来的中文字符
test = new String(test .getBytes("gbk"), "utf-8"); // 转成UTF-8格式
注意: ‘gbk', 'utf-8' 要小写
Java代码
1. 解决方法2:
2. 前台修改为
3. var data = {name:encodeURI($("#myName").val(),"utf-8"),pwd:"password"};
4. 后台修改为
5. String name=URLDecoder.decode(request.getParameter("name"),"utf-8");
解决方法2:
前台修改为
var data = {name:encodeURI($("#myName").val(),"utf-8"),pwd:"password"};
后台修改为
String name=URLDecoder.decode(request.getParameter("name"),"utf-8");
此次用方法2解决问题