项目架构之网络库的基础封装
一、网络数据通信,加密、解密
-
Http请求与Https
-
dls 安全密钥分发
-
需要进行封装处理,同一的模块的,后端网络安全校验
-
-
token校验,sign签名
-
token校验业务层校验,sign签名算法校验请求数据是合法的
-
-
数据加密
菜鸟窝课程练习的接口安全机制
-
这是appid 和appkey appid = tcvEYUlWEc appkey = J#y9sJesv*5HmqLqEV1yUPYfpH$pHx$!
-
响应数据
{ "code":1, "message":"the message", "data":"加密后的字符串" }
-
dataStr的解密
AES/CBC/PKCS7Padding
二、授权机制
base64解码,然后aes解密
三、网络库的基本封装
-
OKhttp/Retrofit的基本用法
-
get/post请求
-
同步get请求:多个请求都有header参数,token校验服务端失效,接口就得返回错误这种问题
-
编写校验拦截器,拦截请求失效执行一个请求,刷新token
-
-
retrofit的baseUrl,path规则
-
-
存在问题
-
异常处理、请求管理、生命周期
-
通用性,数据回调切换
-
-
封装要点
扩展性,接口替换
Okhttp、Retrofit
请求管理get post;取消,tag,队列,重试
异常处理
响应数据的扩展(liveData、coroutines)
状态及dataBean处理
辅助日志,拦截器,cookie
-
封装步骤
-
构建client,基本参数配置
-
cookie/Log/otherInterceptor/https
-
request control
-
data convert
-
三、项目网络service的封装