android网络编程服务器接受到的请求参数与实际发送参数不同?
最近做的一个项目,需要利用移动端连接后台服务器发送JSON请求参数,项目要求使用Android自带的HttpURLConnection,请求方式为POST部分代码如下
而我们需要发送的请求参数是“{}”
但在服务器端接收到的请求参数却是%7B%7D,是ASCII码形式的请参数,Tomcat接受请求的详情如下
请问该如何解决这个问题? |
免责声明:本内容仅代表回答会员见解不代表天盟观点,请谨慎对待。
版权声明:作者保留权利,不代表天盟立场。
|
|
|
|
Stringson=URLEncoder.encode(json,"UTF-8");你已经在客户端这个位置编码json信息:"{}"对应就是%7B%7D; 所以son值为%7B%7D。
那么你在服务端的接收到的值必须是%7B%7D;如果你想获取的值是"{}",就要在进行相应的解码。
或者你不想改服务端的代码,就不要客户端进行编码json内容。将这行代码
Stringson=URLEncoder.encode(json,"UTF-8");去掉。直接
out.write(json); |
|
|
|
|