HttpClient介绍以及具体使用

注意:在程序中若要使用的HttpClient会搜索不到,需要在build.grade文件的android节点下添加

useLibrary 'org.apache.http.legacy' //重新编译一下就会自动导包

1.对了HTTPClient类的介绍

HttpClient是Apache Jkarta Common下的子项目,用来提供高效的,最新的,功能丰富的支持HTTP协议的客户端编程工具包,并且支持HTTP协议最新的版本和建议。

2.HTTPClient基本使用

1.创建HttpClient的实例(了HTTPClient是接口,不能直接实例化对象,可以创建子类的对象赋值给父类的对象)。

     例如:HttpClient Cient = new DefaultHttpClient();

2.配置一些参数(超时时间等)

例如:client.getParams()setIntParamter(HttpConnectionParams.CONNECTION_TIMEOUT,3000);。

    // client.getParams() - >获取客户机的参数,返回一个HttpParam对象(表示http协议和框架的集合)

    // setIntParamter(Stringname,int value)用指定的名称为参数分配一个整数

3.创建请求方法的实例并指定URL(此处创建HttpPost对象)

              例如:HttpPostmPost = new HttpPost(Stringurl);

4.将要请求的内容通过请求对象的setEntity(HttpEntity entity)方法传递

   例如:mPost.setEntity(newStringEntity(strjosn));

5.发送请求(通过HttpClient的的执行()方法,该方法是一个重载方法,返回一个的HttpResponse对象)

       例如:HttpResonsemResponse = client.excute(mPost);

6.判断是否成功,根据状态码

       。mResponse.getStatusLine()getStatusCode(); //获取状态码

//返回一个StatusLine对象[表示从HTTP服务器返回的状态行]); //获取此响应的状态行

//通过该对象的getStatusCode()获得状态码

if(mResponse.getStatusLine()。getStatusCode()== 200)// - >则访问成功

7.获取响应中的消息实体码,并将其转化为字符串/流(HttpEntity可以通过的Http消息发送或接收的实体)

                     例如:HttpEntity mEntity = mReponse.getEntity();

                     1.Stringinfo = EntityUtils.toString(mEntity);

                     2.InputStream is = mEntity.getContent();

你可能感兴趣的:(Android项目开发问题集锦)