android OkHttp 详解
在Android Studio项目中,使用okHttp时要添加:compile 'com.squareup.okhttp:okhttp:2.4.0'OkHttp的使用教程:OkHttpClient mOkHttpClient = new OkHttpClient();//创建okHttpClient对象final Request request= new Request.Builder().url
·
在Android Studio项目中,使用okHttp时要添加:
compile 'com.squareup.okhttp:okhttp:2.4.0'
1.构建网络请求控制对象OkHttpClient
2.创建请求对象request
3.创建Call对象
4.创建接收返回数据的对象response
5.发送网络请求
OkHttp的使用教程:
OkHttpClient mOkHttpClient = new OkHttpClient(); //创建okHttpClient对象
final Request request = new Request.Builder().url("https://baidu.com").build() //创建一个Request对象,设置请求参数
Call call = mOkHttpClient.newCall(Request) //将request构造成一个call对象,将你的请求封装成任务
Response response = call.execute() //得到响应对象
当使用异步请求时:
call.enqueue(new Callback() {
@Override
public void onFailure(Call call, IOException e) {
Log.d(TAG, "异步请求失败"+e.toString());
}
@Override
public void onResponse(Call call, Response response) throws IOException {
Log.d(TAG, "异步请求成功"+response.body().string());
}
});
)
Okhttp网络拦截器:
1.重定向拦截器:RetryAndFollowUpInterceptor
2.桥接拦截器:BridgeInterceptor
我们在Okhttp里面建立一个Request请求对象,但是这个对象并不是直接就可以马上进行网络请求的,毕竟我们你刚开始实例化Request的时候,就简单的放入了Url,body等,很多参数都并没有设置,所以我们还需要补充很多参数,然后发起网络请求,然后网络返回的参数,我们在吧他封装到Okhttp可以直接使用的对象;
3.缓存拦截器:CacheInterceptor
4.连接拦截器:ConnectInterceptor
打开了与服务器的连接,正式开启了网络请求
5.网络请求拦截器:CallServerInterceptor
Tcp协议要建立通道,然后在发送数据,在上面的拦截器ConnectInterceptor已经帮助我们把通道建立好了,所以这个CallServerInterceptor拦截器里面,我们的主要任务是发送相关的数据;
参考文献:
网络请求之Okhttp
更多推荐
已为社区贡献1条内容
所有评论(0)