xUtils 中 HttpUtils 的使用

来源:互联网 发布:ubuntu服务器密码修改 编辑:程序博客网 时间:2024/06/06 03:24

xUtils快速开发框架当中,用来负责HTTP访问的模块为HttpUtils

一.Http请求

这个类里面封装了很多的HTTP请求相关的方法,包括下载和上传文件等功能,并且内部实现了网络请求的缓存,可以通过代码来控制这些设置,使用起来非常的方便,基本可以满足Android开发当中大部分的常规网络请求。

HttpUtils支持以下的几种Http请求

GET、POST、PUT、HEAD、MOVE、COPY、DELETE、OPTIONS、TRACE、CONNECT

HttpUtils当中实现了多个重载的send方法用来发起HTTP请求,其中参数最为全面的一个为:

/**
* 发起带参数的HTTP请求
*
* @param method
*            请求方式(GET/POST/PUT….),在枚举类型HttpRequest.HttpMethod中定义
* @param url
*            请求地址
* @param params
*            请求参数
* @param callBack
*            请求回调接口
* @return HttpHandler对象
*/

public <T> HttpHandler<T> send(HttpRequest.HttpMethod method, String url, RequestParams params, RequestCallBack<T> callBack)

{

}

注意,其中请求参数params 的类型为RequestParams ,这个类是在com.lidroid.xutils.http.client包下面,是xUtils封装的一个请求信息类,其中封装了大量的对请求参数操作的方法,包括对请求头部的操作,内容编码的操作以及对请求优先级的操作等。还需要注意的是在这个类当中分别重载了多个addBodyParameteraddQueryStringParameter这两个方法,用来添加请求参数, 前者用来对POST请求进行参数提交,后者用来进行GET请求参数的添加

一个简单Post请求的Demo

final HttpUtils httpUtils = new HttpUtils();

RequestParams params = new RequestParams();
params.addBodyParameter(“styleid”, “12”);
httpUtils.send(HttpRequest.HttpMethod.POST, “http://bbs.pediy.com/getsecuritytoken.php”, params, new RequestCallBack<String>()

{

RequestCallBack接口内的方法实现…

});

二.  Cookies的相关操作

关于xUtils使用当中,Cookie信息的本地存储功能。

在xUtils框架当中,com.lidroid.xutils.util包下包含了一个PreferencesCookieStore类,实现了Cookie信息在SharedPreferences当中的存取功能。

该类继承自CookieStore,并重写了继承的方法实现了一套Cookie的存取机制,在HttpUitls当中可直接调用configCookieStore(CookieStore cookieStore) 方法来配置请求时使用的Cookie对象,使用起来简单方便,直接上代码:

把Cookie信息存放到本地

75

当发起HTTP请求时,只需要简单配置

76


0 0
原创粉丝点击