使用XMLHttpRequest编码Java问题

时间:2015-10-21 14:09:48

标签: javascript java ajax encoding character-encoding

我正在使用XMLHttpRequest对我的服务器进行ajax调用。 假设我的电话是:

http = new XMLHTTPRequest();
var url = "http://app:8080/search.action?value=ñ"
http.open("GET",url,true);
http.setRequestHeader("Content-type", "application/x-wwww-form-urlencoded;charset-UTF-8");
http.send(null);

在我的操作中,我在参数“value”中收到一个问号。 我已经使用URIEncoding = UTF-8正确配置tomcat,我也有一个Filter设置CharacterEncoding为UTF-8,在web.xml中我将页面编码设置为UTF-8。

我错过了什么?为什么我收到这个字符错了?。

编辑: 这只发生在IE中;在Safari或Firefox中,我按预期收到了ñ。有什么想法吗?

1 个答案:

答案 0 :(得分:1)

您需要对请求中的参数进行编码。 试试这个:

var url = "http://app:8080/search.action?value=" + encodeURI('ñ')