当前位置:  编程技术>移动开发

Android HttpClient GET或者POST请求基本使用方法

    来源: 互联网  发布时间:2014-10-11

    本文导语:  在Android开发中我们经常会用到网络连接功能与服务器进行数据的交互,为此Android的SDK提供了Apache的HttpClient来方便我们使用各种Http服务。你可以把HttpClient想象成一个浏览器,通过它的API我们可以很方便的发出GET,POST请求(当...

在Android开发中我们经常会用到网络连接功能与服务器进行数据的交互,为此Android的SDK提供了Apache的HttpClient来方便我们使用各种Http服务。你可以把HttpClient想象成一个浏览器,通过它的API我们可以很方便的发出GET,POST请求(当然它的功能远不止这些)

这里只介绍如何使用HttpClient发起GET或者POST请求
GET 方式
代码如下:

//先将参数放入List,再对参数进行URL编码
List params = new LinkedList();
params.add(new BasicNameValuePair("param1", "中国"));
params.add(new BasicNameValuePair("param2", "value2"));
//对参数编码
String param = URLEncodedUtils.format(params, "UTF-8");
//baseUrl
String baseUrl = "http://ubs.free4lab.com/php/method.php";
//将URL与参数拼接
HttpGet getMethod = new HttpGet(baseUrl + "?" + param);

HttpClient httpClient = new DefaultHttpClient();
try {
HttpResponse response = httpClient.execute(getMethod); //发起GET请求
Log.i(TAG, "resCode = " + response.getStatusLine().getStatusCode()); //获取响应码
Log.i(TAG, "result = " + EntityUtils.toString(response.getEntity(), "utf-8"));//获取服务器响应内容
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

POST方式
代码如下:

//和GET方式一样,先将参数放入List
params = new LinkedList();
params.add(new BasicNameValuePair("param1", "Post方法"));
params.add(new BasicNameValuePair("param2", "第二个参数"));

try {
HttpPost postMethod = new HttpPost(baseUrl);
postMethod.setEntity(new UrlEncodedFormEntity(params, "utf-8")); //将参数填入POST Entity中

HttpResponse response = httpClient.execute(postMethod); //执行POST方法
Log.i(TAG, "resCode = " + response.getStatusLine().getStatusCode()); //获取响应码
Log.i(TAG, "result = " + EntityUtils.toString(response.getEntity(), "utf-8")); //获取响应内容

} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

    
 
 

您可能感兴趣的文章:

  • android开发教程之android的handler使用方法
  • android WakeLock使用方法代码实例
  • android开发教程之系统资源的使用方法 android资源文件
  • Android控件系列之Shape使用方法
  • Android RadioButton单选框的使用方法
  • Android控件之ToggleButton的使用方法
  • Android中库项目的使用方法图文介绍
  • android TextView多行文本(超过3行)使用ellipsize属性无效问题的解决方法
  • android之自定义Toast使用方法
  • android Textview文字监控(Textview使用方法)
  • android中DatePicker和TimePicker的使用方法详解
  • android Activity相对布局的使用方法
  • Android 自动化测试经验分享 UiObejct.getFromParent()的使用方法
  • 使用android隐藏api实现亮度调节的方法
  • android之HttpPost&HttpGet使用方法介绍
  • android TabHost(选项卡)的使用方法
  • android UI进阶之android中隐藏的layout 抽屉的使用方法
  • Android 自动判断是电话,网址,EMAIL方法之Linkify的使用
  • android开发教程之listview使用方法
  • Android layout_weight使用方法及实例
  • Android 中HttpURLConnection与HttpClient使用的简单实例
  • Android下通过httpClient发送GET和POST请求的实例代码
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • android接收到蓝牙配对请求时如何点亮屏幕具体实现
  • android平台HttpGet、HttpPost请求实例
  • android异步请求服务器数据示例
  • Android HTTP发送请求和接收响应的实例代码
  • Android发送GET与POST请求的DEMO详解
  • Android封装的http请求实用工具类
  • Android中发送Http请求(包括文件上传、servlet接收)的实例代码
  • 申请Android Map 的API Key(v2)的最新申请方式(SHA1密钥)
  • Android瀑布流实例 android_waterfall
  • Android开发需要的几点注意事项总结
  • Android系统自带样式 (android:theme)
  • android 4.0 托管进程介绍及优先级和回收机制
  • Android网络共享软件 Android Wifi Tether
  • Android访问与手机通讯相关类的介绍
  • Android 图标库 Android GraphView
  • Web服务器/前端 iis7站长之家
  • 轻量级Android开发工具 Android Tools
  • Android 2.3 下StrictMode介绍
  • Android 开发环境 Android Studio
  • IDEA的Android开发插件 idea-android
  • Android手机事件提醒 Android Notifier
  • XBMC的Android客户端 android-xbmcremote
  • Android小游戏 Android Shapes
  • Android电池监控 Android Battery Dog
  • android开发:“android:WindowTitle”没有对应项no resource
  • Android 上类似IOS 的开关控件。 Android ToggleButton
  • Android 将 android view 的位置设为右下角的解决方法
  • Android 2D游戏引擎 Android Angle


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3