OKhttp源码解析---demo
2016-11-02 11:31
260 查看
首先来看一个例子:
private static void OkHttpGet() {
OkHttpClient mOkHttpClient = new OkHttpClient();
Request.Builder requestBuilder = new Request.Builder().url("http://www.baidu.com");
//可以省略,默认是GET请求
requestBuilder.method("GET", null);
Request request = requestBuilder.build();
Call mcall = mOkHttpClient.newCall(request);
mcall.enqueue(new Callback() {
@Override
public void onFailure(Call call, IOException e) {
}
@Override
public void onResponse(Call call, Response response) throws IOException {
if (null != response.cacheResponse()) {
String str = response.cacheResponse().toString();
System.out.println("cache---" + str);
} else {
response.body().string();
String str = response.networkResponse().toString();
System.out.println("network---" + str);
}
}
});
}
输出:
network---Response{protocol=http/1.1, code=200, message=OK, url=http://www.baidu.com/}具体使用流程:
1、创建一个OkHttpClient客户端
2、创建一个请求,如下代码:
Request.Builder requestBuilder = new Request.Builder().url("http://www.baidu.com");
requestBuilder.method("GET", null);
Request request = requestBuilder.build();
Call mcall = mOkHttpClient.newCall(request);3、设置回调,把请求入队列。
这里的response.cacheResponse()是看是否是从缓存中获取。
3、
private static void OkHttpGet() {
OkHttpClient mOkHttpClient = new OkHttpClient();
Request.Builder requestBuilder = new Request.Builder().url("http://www.baidu.com");
//可以省略,默认是GET请求
requestBuilder.method("GET", null);
Request request = requestBuilder.build();
Call mcall = mOkHttpClient.newCall(request);
mcall.enqueue(new Callback() {
@Override
public void onFailure(Call call, IOException e) {
}
@Override
public void onResponse(Call call, Response response) throws IOException {
if (null != response.cacheResponse()) {
String str = response.cacheResponse().toString();
System.out.println("cache---" + str);
} else {
response.body().string();
String str = response.networkResponse().toString();
System.out.println("network---" + str);
}
}
});
}
输出:
network---Response{protocol=http/1.1, code=200, message=OK, url=http://www.baidu.com/}具体使用流程:
1、创建一个OkHttpClient客户端
2、创建一个请求,如下代码:
Request.Builder requestBuilder = new Request.Builder().url("http://www.baidu.com");
requestBuilder.method("GET", null);
Request request = requestBuilder.build();
Call mcall = mOkHttpClient.newCall(request);3、设置回调,把请求入队列。
这里的response.cacheResponse()是看是否是从缓存中获取。
3、
相关文章推荐
- BezierDemo源码解析-实现qq消息气泡拖拽消失的效果
- OGRE例子:Demo_Ocean 源码解析
- OKHttp(2)——源码解析
- Android消息机制Handler解析(源码+Demo)
- OkHttp完全解析(十)源码解析三
- OGRE例子:Demo_Ocean 源码解析
- OkHttp源码解析
- OKHttp源码解析(三)
- OKHttp源码解析(二)
- OKHttp源码解析
- android报表图形引擎(AChartEngine)demo解析与源码
- Android自定义控件:进度条的四种实现方式(Progress Wheel的解析)(源码 + Demo)
- 清晰易懂TCP通信原理解析(附demo、简易TCP通信库源码、解决沾包问题等)
- 源码学习—— Demo解析Canvas绘图
- 清晰易懂TCP通信原理解析(附demo、简易TCP通信库源码、解决沾包问题等)
- OGRE例子:Demo_Ocean 源码解析
- 【10.2移动新特性】”离线编辑“示例Demo解析及源码下载
- OKHttp源码解析
- OkHttp完全解析(八)源码解析一
- OKHttp源码解析