总结一下项目中的框架
2019-04-03 本文已影响0人
东了个尼
注解:AccessToken: 一个访问令牌包含了此登陆会话的安全信息
RequestToken: (请求令牌)服务器端在处理到达的请求之前,会将请求中包含的令牌值与保存在当前用户会话中的令牌值进行比较.
屏幕快照 2019-04-03 下午4.08.09.png注解:sign(是将请求参数param字典升序)然后与AccessToken,RequestToken,时间戳(TimeStamp)以及盐salt,拼接在一起sha加密后的字符串
加密规则:sha-1加密,然后加盐。
TimeStamp:时间戳用来记录用户登录时间,以及用户当前请求的时间。一般会设置一个超时时间。超时过后,强制用户登录下线,重新登录。
下面对具体的请求做一个区分。由于服务中有些请求是不需要用户登录鉴权的,所以每次请求可以忽略掉Token码。所以这就需要网络框架更加的灵活。
在网络架构设计中参考了SJNetwork的设计。统一配置服务器地址。将业务层与服务请求层分离。业务层直接对接的类,包含了除配置接口外所有关于网络请求功能的接口。在所有的网络请求接口中增加是否忽略Token的Bool值,如果需要忽略Token值传入YES(代表是不需要鉴权的请求),传入NO代表是需要鉴权的请求。然后在网络请求的根部,对请求头进行区分。