Android模块化-----网络模块封装
在实际的应用开发中,常用到的网络框架有OkHttp、Retrofit、RxJava+RxAndroid,每个框架都有自己的优点:例如OkHttp,因为其特有的拦截器责任链模式,可以拦截请求和响应;Retrofit内部封装OkHttp,它更高效在于使用注解封装Http请求,在之前Retrofit中也使用过;RxJava的优势在于它的操作符,事件的转换。 每个框架都有自己的优点,因此通过整合全部的请求框架,来实现多域名、多环境、结构清晰的网络模块,因此在项目封装网络请求模块势在必行。 1、基础理论 首先先介绍一下Http中请求和响应的报文格式。 (1)get请求报文格式 ------ 第一部分:请求行 主要包括请求方法GET、URL(接口)、协议版本(Http1.0或者Http1.1) ------第二部分:请求头 Host:域名(www.xxxxx.xxx)、Connection(如果是Http1.1会默认是长连接 Keep Alive)、与Accept相关的字段(像Accept-Language、Accept-Encoding)… (2)get请求响应报文 ------第一部分:响应行 状态码、状态码描述、协议版本 ------第二部分:响应头 Server:服务器端的描述、Connection:长连接、响应的类型Content-type:json数据。。。。。。 -----