Okhttp源码解析(一)
在Android开发中,网络请求一直是绕不去的坎,以前我们一般使用
HttpURLConnection
和HttpClient
。后面我们可以用volley
或者XUtils
。当然我们现在基本上都是使用OKHttp
了。
本人也使用
OKHttp
几年了,最近在研究它的源码,也看了其他介绍OKHttp
的文章,还是有些收获的,把一些感悟和想法写出来,算是对自己的学习做个总结把!
在看OKHttp
之前,我们看下OKHttp
的简单用法,如下图:
//这里新建一个OkHttpClient对象
OkHttpClient okHttpClient = new OkHttpClient.Builder().build();
//请求的对象
Request request = new Request.Builder()
.url("https://www.baidu.com")
.build();
//执行请求的线程
Call call = okHttpClient.newCall(request);
//返回的对象
Response response = null;
//异步
call.enqueue(new Callback() {
@Override
public void onFailure(Call call, IOException e) {
}
@Override
public void onResponse(Call call, Response response) throws IOException {
response = response;
}
});
try {
//同步
response = call.execute();
} catch (IOException e) {
e.printStackTrace();
}
上面就是OKHttp
的基本用法,包括同步和异步。
网友评论