HTTP及okhttp的优势
http结构
请求头
- 列表内容
- 表明本次请求的客户端
- 本次请求的cookie
- 本次请求希望返回的数据类型
- 本次请求是否采用数据压缩等等一系列设置
请求体
- 指定本次请求所使用的方法
- 请求所使用的方法
响应头
- 服务器标识
- 状态码
- 内容编码
- cookie 返回给客户端
响应体
本次请求所返回的数据
工作流程
1.首先客户端与服务器需要建立连接
2.建立连接后,客户机发送一个请求给服务器
3.服务器街道请求后,给予相应的响应信息
4.客户端接收服务器所返回的信息,连接断开
http的优点
简单快速
灵活
无连接
无状态
SPDY
1. SPDY 是一种HTTP的兼容协议
2.多路复用请求
3.对请求划分优先级
4. 压缩HTTP头
HTTP2.0
基于SPDY,IETF定制的新一代HTTP协议
更安全的SSL
OkHTTP的优势
- 为我们android客户端支持HTTP2.0提供了途径
- 由著名的square团队开发
- 支持SPDY,HTTP2.0 , 共享同一个Socket来处理 同一个服 务器的所有请求
- 如果SPDY不可用, 则通过连接池来减少请求延时
- 无缝的支持GZIP来减少数据流量
- 缓存响应数据来减少重复的网络请求
- 可以从很多常见的连接问题中自动重连
OkHttp的架构设计
OkHttp的主干流程图
多路复用原理
重连机制
类图
从类图中可以看出OkHTTPClient 是OkHttp核心类他依赖了其他类的应用。