HttpClient的基本用法

xiaoxiao2021-02-28  93

具体步骤如下所示:

(1)创建HttpClient对象。

(2)指定访问网络的方式,创建一个HttpPost对象或者HttpGet对象。

(3)如果需要发送请求参数,可以调用HttpGet,HttpPost都具有的setParams()方法。对于HttpPost对象而言,也可调用setEntity()方法来设置请求参数。

(4)调用HttpClient对象的execute()方法访问网络,并获取HttpResponse对象

(5)调用HttpResponse.getEntity()方法获取HttpEntity的实例对象,该对象包装了服务器的响应内容,也就是所请求的数据。

 在使用HttpClient访问网络时需要用到的几个常用类如下

                                                               HttpClient常用类介绍表

      常用类名称                                               功能描述                                                                         HttpClient请求网络的接口DefaultHttpClient实现了HttpClient接口的类HttpGet使用GET方式请求必须创建该类实例HttpPost使用POST方式请求必须创建该类实例nameValuePair关联参数的Key ValueBasicNameValuePair以Key  Value的形式存放参数的类UrlEncodeedFormEntity将提交给服务器参数进行编码的类HttpResponse封装了服务器返回信息的类(包含头信息)HttpEntity封装了服务返回数据的类 上表中介绍了HttpClient几个常用类及他们的作用,下面通过一段示列代码可以更好的理解如何使用HttpClient访问网络和这些类在访问网络时的用法

如下:

 //获取到HttpClient对象

HttpClient client=new DefaultHttpClient(); 第一步 HttpPost httpPost=new HttpPost("http://www.baidu.com"); 第二步 List<NameValuePair> params=new ArraryList<NameValuePair>(); //创建一个NameValuePair集合,用于添加参数 params.add(new BasicNameValuePair("username","admin")); 给参数设置编码 UrlEncodedFormEntity entity=new UrlEncodedFormEntity(params,"utf-8"); //设置参数(请求参数) httpPost.setEntity(entity); 第三步 //获取HttpResponse对象 HttpResponse httpResponse=client.execute(httpPost); 第四步 //获取状态码 int statusCode=httpResponse.getStatusLine().getStatusCode(); if(statusCode==200){ //访问成功 //获取HttpEntity的实例 HttpEntity httpEntity=httpResponse.getEntity(); 第五步 //设置编码格式 String response=EntityUtils.toString(httpEntity,"utf-8"); } 上述代码演示了如何使用HttpClient访问服务器并获取返回的数据。需要注意的是, 使用POST方式设置参数时,需要创建一个NameValuePair的集合来添加参数。在给参数设置编码时,需要与服务器的解码格式保持一致性,否则会出现中文乱码的情况

转载请注明原文地址: https://www.6miu.com/read-72642.html

最新回复(0)