美文网首页
网络封装的基本思路

网络封装的基本思路

作者: 我的大好时光 | 来源:发表于2018-01-31 20:22 被阅读15次

这个封装的主要目的是,退出控制器UIViewController,从而取消当前控制器的网络请求。

1.UIViewController层
  • 基于MVC的设计模式,发起网络请求。
  • 持有DAO对象。当Controller释放,DAO对象释放。
2.DAO层
  • DAO (Data Access Object) 数据访问对象是一个面向对象的接口. 直接操作数据库, 针对数据的增添,删除,修改,查找,具体为业务逻辑层或表示层提供数据服务。
  • 这里我把DAO可以看做成为一个Controller层和NetWorkHelper之间的一个枢纽。
  • 例如:新建DAO分类(DAO+Login.h),可以把登录的请求任务放在这里。
  • 持有NetWorkHelper对象。当DAO层释放时,取消对应的网络请求。
3.NetWorkHelper
  • 提供GET、POST等实例方法。
  • 保存每次请求的NSURLSessionDataTask实例。
  • 提供取消网络请求方法。
  • 基于HTTPSessionManager进行网络操作。
4.HTTPSessionManager
  • 单利,初始化网络请求对象,保持长连接。
  • 提供get、post等供外部使用的实例方法。
  • 返回NSURLSessionDataTask实例。
5.AFNetWorking

下面是整个封装的思维导图

网络封装.png

以上属于自己的个人思路,有问题互相交流,希望可以帮到你。

相关文章

网友评论

      本文标题:网络封装的基本思路

      本文链接:https://www.haomeiwen.com/subject/gfblzxtx.html