一、OKHttp3简介
OKHttp是一个处理网络请求的轻量级开源框架,由移动支付Square公司贡献,用于替代HttpUriConnection和Apache HTTPClient,进行http请求,从Android 4.4 开始HttpUrlConnection底层实现采用OKHttp,而HttpClient已经废弃,并且在Android 6.0 API 23 后已被移除。
GitHub:https://github.com/square/okhttp(截止到博客更新时已有 27096 Star)
http://square.github.io/okhttp/
OKHttp功能:
- post,get等请求
- 文件上传下载
- 加载图片
- 支持请求回调,直接返回对象、对象集合
- 支持session的保持
OKHttp优点:
- 支持HTTP2/SPDY(SPDY是Google开发的基于TCP的传输层协议,用以最小化网络延迟,提升网络速度,优化用户的网络使用体验)
- socket自动选择路线,支持重连,拥有自动维护的socket连接池,减少握手次数,减少了请求延迟,共享socket,减少了对服务器的请求次数
- 基于Headers的缓存策略减少重复的网路请求
- 拥有Interceptors轻松处理请求与相应(自动处理GZip压缩&