文档章节

Android Http通信

贺路的路
 贺路的路
发布于 2013/04/28 00:00
字数 296
阅读 330
收藏 6

  Http的方式通信,下面看看它的过程:

1、传入URL,实例化HtppPost。Http通信当然是Web通信,就要一个网址了,即HttpPost httpRequest = new HttpPost(String URL);
 2、发送参数(无参、带参)。这里有两种方法:Get/Post方法,选择用哪个我相信大家都知道,即先传参httpRequest.setEntity(httpentity),
   再发送new DefaultHttpClient().execute(httpRequest);
 3、得到服务器所调用方法的结果。前面传了个参,同理,服务器要返回个参数,即EntityUtils.toString(httpResponse.getEntity());

 
 OK,就这么简单,httpPost还要设置头消息,httpPost.addHeader("Content-Type", "application/json;charset=utf-8");当然,还要网络的访问权限<uses-permission android:name="android.permission.INTERNET" />,下面附上主要代码:
    

httpHelper = new HttpHelper(Serverip);

 List<NameValuePair> List = new ArrayList<NameValuePair>();
 List.clear();


 runServce(FinalAction.NO_PARA, List);


 public String runServce(String servceAction, List<NameValuePair> sList) {
  String result = null;
  String ParValue = null;
  String ParName = null;
  try {
   HttpPost httpPost = new HttpPost(servceURL(servceAction));

   if (sList != null && sList.size() > 0) {
    JSONObject sendParams = new JSONObject();
    for (int i = 0; i < sList.size(); i++) {
     ParName = sList.get(i).getName();
     ParValue = sList.get(i).getValue();
     sendParams.put(ParName, ParValue);
    }
    String send = sendParams.toString();
    HttpEntity entity = new StringEntity(send, "UTF-8");
    httpPost.setEntity(entity);
   }
   
   httpPost.addHeader("Content-Type", "application/json;charset=utf-8");
   HttpResponse httpResponse = new DefaultHttpClient().execute(httpPost);

   if (httpResp.getStatusLine().getStatusCode() == 200) {
    Log.d("HttpPost",EntityUtils.toString(httpResponse.getEntity()));
   }else {
    Log.i("", "请求失败!");
            }

  } catch (Exception ee) {
   ee.printStackTrace();
  }
  return result;
 }



  我的博客其它文章列表  
   http://my.oschina.net/helu

© 著作权归作者所有

贺路的路
粉丝 62
博文 70
码字总数 30472
作品 0
广州
程序员
私信 提问
android网络通信之socket教程实例汇总

一、socket基础 1、Socket通讯机制(详细),如何将socket通信的客户端与服务器 http://www.eoeandroid.com/thread-61727-1-1.html 2、Http和Socket区别 http://www.eoeandroid.com/thread-9...

程序袁_绪龙
2014/12/11
0
0
android的NDK和java进行本地socket通信

关于Android应用与Framework的socket通信,相信关心这个问题的朋友们已经看过《android使用socket使底层和framework通信》这篇文章,美中不足的是作者只贴出一些关键的代码片段而并没有放出源...

shouyong
2012/12/21
0
0
安卓串口 接受不了数据

小弟,最近在研究串口通信, 具体是通过安卓设备与电脑终端之间的串口通信。 程序的代码可以参考,http://www.oschina.net/question/157182_39785, 做过串口通信的都知道,基本上就是googl...

tianxiayuxin
2014/07/08
1K
2
Android与MINA2、Netty4的跨平台UDP双向通信实战

概述 本文演示的是一个Android客户端程序,通过UDP协议与两个典型的NIO框架服务端,实现跨平台双向通信的完整Demo。 当前由于NIO框架的流行,使得开发大并发、高性能的互联网服务端成为可能。...

JackJiang-
2016/06/30
804
1
Activity 与 Fragment 之间相互通信

欢迎转载,但请保留文章原始出处→→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4000390.html 联系方式:smyhvae@163.com 【正文】 一、接口回...

iSnowFlake
2015/11/19
0
1

没有更多内容

加载失败,请刷新页面

加载更多

阿里云POLARDB如何助力轻松筹打造5亿用户信赖的大病筹款平台?

轻松筹首创了“大病救助”模式,帮助了众多病患在第一时间解決了医疗资金等问题,为了从源头解决了医疗资金问题。而在轻松筹这样全球5.5亿用户信赖的大病筹款平台的背后,是日益增长的各种数...

阿里云云栖社区
10分钟前
2
0
Confluence 6 在升级过程中查看合并日志

为了监控升级的过程,你应该查看 application log 日志中的输出。 通常日志经常将会显示多个日志实例,这个实例是定义在日志的 INFO 级别的,通常格式如下: WikiToXhtmlMigrationThread-n -...

honeymoose
10分钟前
0
0
git diff 文件对比

git diff filepath 工作区与暂存区比较 git diff HEAD filepath 工作区与HEAD ( 当前工作分支) 比较 git diff --staged 或 --cached filepath 暂存区与HEAD比较 git diff branchName filepa......

李佳顺
10分钟前
0
0
spring mvc 定制化配置

spring mvc 自定义配置 1.实现某些接口,然后让上面的类加载进去. class MyHandlerMethodArgumentResolver implements HandlerMethodArgumentResolver { @Override public boolean......

最爱肉肉
13分钟前
0
0
OSG_采样像机的内容如果不显示到窗口上

cameraLight->setRenderTargetImplementation(Camera::FRAME_BUFFER_OBJECT);// 这句使内容不渲染到屏幕上cameraLight->setRenderOrder(Camera::PRE_RENDER); 1.setRenderTargetImplement......

洛克人杰洛
16分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部