Java 带有特殊字母的JSON查询字符串

Java 带有特殊字母的JSON查询字符串,java,json,http,Java,Json,Http,我正在尝试使用JSON数组将HTTPPost发送到web服务器 这个实现有问题吗 sendData = "?type=1&registID=aaabbbccc&email=xxxxxxxx@gmail.com"; HttpPost post = new HttpPost(url + sendData); 可能有一些特殊的字母,如u,-,@。在ID部分和电子邮件部分 我认为这会导致服务器返回无效结果 我怎样才能解决这个问题 ////// 返回的结果如下所示 <html>

我正在尝试使用JSON数组将HTTPPost发送到web服务器

这个实现有问题吗

sendData = "?type=1&registID=aaabbbccc&email=xxxxxxxx@gmail.com";
HttpPost post = new HttpPost(url + sendData);
可能有一些特殊的字母,如u,-,@。在ID部分和电子邮件部分

我认为这会导致服务器返回无效结果

我怎样才能解决这个问题

////// 返回的结果如下所示

<html><head><title>Apache Tomcat/7.0.50 - Error report</title>.......
<body>HTTP Status 404 - ..........<u>The requested resource is not 
available.</u>....</body></html>
ApacheTomcat/7.0.50-错误报告。。。。。。。
HTTP状态404-……。请求的资源不可用
可用。。。。。

它必须是sendData中的无效字符。encodeULI()通常用于将不可接受的特许转换为有效代码时,可通过URL由浏览器处理。我不是很确定,但是这个函数应该可以解决这个问题

试试这个

sendData = "?type=1&registID=aaabbbccc&email=xxxxxxxx@gmail.com";
HttpPost post = new HttpPost(url + encodeURI(sendData));

因此,问题与该来源无关

这是服务器导致的错误

服务器开发人员在试图解决这个问题两个小时后告诉我,服务器实际上无法运行

MSS的回答在服务器恢复开启状态后导致了另一个错误


结论:特殊字符,如下划线、@、。不会导致与服务器通信出现任何问题。

我认为下划线、连字符、at符号或句点字符不足以中断get查询。有了这些值,它会崩溃吗?(例如,给我们一个例子,你从你的服务器得到一个无效的结果)我不是很确定答案,而且我的英语水平很低,所以我更喜欢写得简短