急急急!Java解析AJAX的中文URL乱码!

sucful 2007-11-27 02:25:50
在网上查了两天帖子了,中文乱码的问题还是没有解决!
1.系统配置如下:
Tomcat6.0 web.xml已经设置filter为utf-8 server.xml也设置为utf-8
windows xp 中文
IE7.0
2.代码如下
2.1客户端:
<html>
<head>
<meta http-equiv=Content-Type content="text/html;charset=UTF-8">
……
……
createXMLHttpRequest();
var url = "Search?names=" + encodeURI(inputField.value, 'utf-8');
alert('no parse: '+url +';parse: '+ decodeURI(url));//判断javascirpt中是否解析成功
xmlHttp.open("GET", url, true);
xmlHttp.onreadystatechange = callback;
xmlHttp.send(null);
2.2服务器端:
request.setCharacterEncoding("utf-8");
String param_1= new String(request.getParameter("names"));
System.out.println(param_1);
或者
String param_2 =new String(java.net.URLDecoder.decode(request.getParameter("names"), "utf-8"));
System.out.println(param_2);
3.结果:
假如input.value等于“中文”
3.1客户端
返回对话框"no parse: search?name=%E4%B8%AD%E6%96%87; parse: search?name=中文
这应该可以说明javascript对中文参数的字符转换是成功的
3.2服务器端
总是是显示“???”
请高手帮忙!!

...全文
184 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
sucful 2007-11-27
  • 打赏
  • 举报
回复
url 一定要加密两次
sucful 2007-11-27
  • 打赏
  • 举报
回复
To kokobox :

真是牛人!
太感谢了!
kokobox 2007-11-27
  • 打赏
  • 举报
回复
还有设定请求编码'Content-Type', 'application/x-www-form-urlencoded; charset=utf-8'
anyoneking 2007-11-27
  • 打赏
  • 举报
回复
把你的代码中的encodeURI(inputField.value, 'utf-8')改为escape(inputField.value) 试一试!
kokobox 2007-11-27
  • 打赏
  • 举报
回复
var getUrl = "/aaa/aaa.do?method=aaa";
var post = "aaa="+aaa+"&aaa="+aaa+"&aaa="+aaa;
post = encodeURI(post);
post = encodeURI(post); //一定要加密两次

xmlHttp.open("GET", getUrl , true);
xmlHttp.onreadystatechange = callback;
xmlHttp.send(post);


服务器端接受:for (Enumeration e = request.getParameterNames(); e.hasMoreElements();) {
String name = (String) e.nextElement();
String v = request.getParameter(name);
String value = java.net.URLDecoder.decode(v, "UTF-8");

if (name.equals("aaa")) {
aaa= value;
}
}

这样两边都不会乱码,返回的时候在url中给中文加密再传过去,就应该没问题了,我是这样做的,没问题。

81,122

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧