首页新闻找找看学习计划

有关Android 访问WCF的有关问题

0
悬赏园豆:40 [待解决问题]

我现在想在Android客户端向.net 服务端发送一段json,然后接收一段xml数据 发送代码如下

 

     public static InputStream postFromHttpClient(String path,
     Map<String, String> params, String encode) throws Exception {
     // 用于存放请求参数
     List<NameValuePair> formparams = new ArrayList<NameValuePair>();
     for (Map.Entry<String, String> entry : params.entrySet()) {
     formparams.add(new BasicNameValuePair(entry.getKey(), entry
     .getValue()));
     }
     UrlEncodedFormEntity entity = new UrlEncodedFormEntity(formparams,
     encode);
     HttpPost httppost = new HttpPost(path);
     System.out.println(entity.toString());
     httppost.setEntity(entity);
     // 看作是浏览器
     HttpClient httpclient = new DefaultHttpClient(); // 发送post请求
     HttpResponse response = httpclient.execute(httppost);
    
     // return readStream(response.getEntity().getContent());
     System.out.println(response.getEntity().getContent());
     return response.getEntity().getContent();
     }

 


这是我在网上找的一个方法,
我想返回一输入流对象,
因为我对这块儿不太熟悉,以前我都是用HttpURLConnection访问的,我想各位看看这个方法是不是可以正常发送一段json格式的字符串,如果不行,该怎么改,怎么判断我是否发送成功??

我的访问的地址是http://172.26.4.31:3515/AndroidService.svc
访问的时候还会报06-08 01:54:23.484: E/ConnectTool(401): java.lang.IllegalArgumentException: Illegal character in scheme at index 0: http://172.26.4.31:3515/AndroidService.svc

这是什么意思???

为梦奔跑的主页 为梦奔跑 | 初学一级 | 园豆:60
提问于:2012-06-08 13:09
< >
分享
所有回答(4)
0
dudu | 园豆:41311 (高人七级) | 2012-06-08 14:16

与看到这样的回复,我更愿意看到回复“我不会”

支持(0) 反对(0) 为梦奔跑 | 园豆:60 (初学一级) | 2012-06-08 16:26

@为梦奔跑: 与其回复“我不会”,不如找点文章碰砬运气,即使文章不合适,多看一点文章也没坏处。

支持(0) 反对(0) dudu | 园豆:41311 (高人七级) | 2012-06-08 17:03
0
HttpClient 是apche的一个开源项目,比原始的HttpURLConnection更强大,可以模拟一个浏览器了。
从你抛出的异常信息来看,很可能是以为特殊字符导致的,请你检查一下你的请求参数中的JSON字符串。
我现在没有环境,也没法测试你的代码,你还是先检查请求参数。讲特殊字符替换、过滤,或者Encoding。
推荐你用AsyncTask这种异步的方式,这样UI线程不会等待。
 
 
丁码农 | 园豆:437 (菜鸟二级) | 2012-06-08 23:44
0

哥子  把你的wcf  代码发给我看看 行不?   发到我QQ邮箱谢谢 370589677@qq.com

暗夜骑士 | 园豆:204 (菜鸟二级) | 2012-07-17 11:19
0

地址中存在非法字符,将地址中的'/'转义为'//'试试看。

_天南 | 园豆:202 (菜鸟二级) | 2013-11-22 21:57
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册