首页 > Web开发 > 详细

使用HTTP协议访问网络

时间:2017-02-05 17:02:09      阅读:348      评论:0      收藏:0      [点我收藏+]

在Android上发送http请求有2种方式,分别由两个类完成,HttpURLConnection和HttpClient.

一、使用HttpURLConnection方式

  1.1 建立连接的基本步骤

    1 创建一个URL对象,例如:

      URL url = new URL("http://www.baidu.com");

    2 获取HttpURLConnection对象

      HttpURLConnection connection = (HttpURLConnecton)URL.openConnection();

    3 设置HTTP请求方式,常用的方式有“GET”和“POST”两种。

      connection.setRequestMethod("GET");

    4 设置一些其他参数,例如连接超时,读取超时的时间,例:

      connection.setConnectionTimeout(8000);

      connection.setReadTimeOut(6000);

    5 调用getInputStream()方法获取到服务器返回的一个输入流,然后读取数据。

二、使用HttpClient

  HttpClient是Apache提供的HTTP访问接口,其是一个接口,通常无法直接创建它的示例,HttpClient的基本使用步骤如下:

  1、通常创建一个DefaultHttpClient的实例,如下:

    HttpClient httpClient = new DefualtHttpClient();

  2、如果是发起一条GET请求,则创建一个HttpGet对象,并传入目标网络地址,然后调用HttpClient的execute()方法,如下:

    HttpGet httpGet = new HttpGet("http://www.baidu.com");

    httpClient.execute(httpGet);

    如果是发起一条POST请求,需要创建HttpPost对象,传入目标地址,然后通过NameValuePair集合来存放待提交参数,并将这个参数集合传入到一个UrlEncodeFormEnty中,然后通过HttpPost的setEntity方法将构建好的UrlEncodeFormEntity传入,最后调用HttpClient的execute()方法,并传入HttpPost对象。如下:

  HttpPost httpPost = new HttpPost("http://www.baidu.com");

  List<NameValuePaire> list = new ArrayList<NameValuePair>();

  list.add(new BasicNameValuePair("username","admin"));

  list.add(new BasicNameValuePair("password","123456"));

  UrlEncodeFormEntity entity = new UrlEncodeFromEntity(list,"utf-8");

  httpPost.setEntity(entity);

  httpClient.execute(httpPost);

 

使用HTTP协议访问网络

原文:http://www.cnblogs.com/llxbl/p/6367914.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!