美文网首页
AFNetworking框架预览

AFNetworking框架预览

作者: 春风依旧 | 来源:发表于2018-08-11 17:18 被阅读21次

前言:

作为一个iOS开发,对网络请求库AFN再熟悉不过了,我在平时开发中只是用了它的部分功能,对它的实现原理并不是很清楚,所以决定通读一下这个框架,对他的实现原理能有更好,更深入的了解

一、AFN分为5个功能模块

  • 网络通信模块(AFURLSessionManager、AFHTTPSessionManger)
  • 网络状态监听模块(Reachability)
  • 网络通信安全策略模块(Security)
  • 网络通信信息序列化/反序列化模块(Serialization)
  • 对于iOS UIKit库的扩展(UIKit)
AFN架构图.png
  • AFURLSessionManager是核心类,虽然后缀是Manager,不过并不是单例。数据,上传,下载三种业务都在这里完成
  • AFURLSessionManager中,输入信息仍然使用URLRequest,自定义的AFHTTPRequestSerializer并没有使用
  • AFURLSessionManager中, 安全和网络可达性都有专门的类负责,在初始化函数中一并启动
  • 数据通讯,相对来说,还是使用AFHTTPSessionManager更方便,这里用到了AFHTTPRequestSerializer,对URLRequest做了一层封装
  • AFHTTPSessionManager也不是单例,虽然提供了+ (instancetype)manager方法。

二、体系结构

NSURLSession

  • AFURLSessionManager
  • AFHTTPSessionManager

Serialization

  • <AFURLRequestSerialization>
    • AFHTTPRequestSerializer
    • AFJSONRequestSerializer
    • AFPropertyListRequestSerializer
  • <AFURLResponseSerialization>
    • AFHTTPResponseSerializer
    • AFJSONResponseSerializer
    • AFXMLParserResponseSerializer
    • AFXMLDocumentResponseSerializer (macOS)
    • AFPropertyListResponseSerializer
    • AFImageResponseSerializer
    • AFCompoundResponseSerializer

Additional Functionality

  • AFSecurityPolicy
  • AFNetworkReachabilityManager

相关文章

  • AFNetworking框架预览

    前言: 作为一个iOS开发,对网络请求库AFN再熟悉不过了,我在平时开发中只是用了它的部分功能,对它的实现原理并不...

  • 常用的第三方框

    AFNetworking 网络框架 MJRefresh 刷新框架 MJExtension 模型框架 Masonry...

  • 谈谈网络请求

    AFN (AFNetworking) 网络请求中, 使用最多的就是AFNetworking框架, AFNetwor...

  • 关于第三方类库的使用

    刷新框架 MJRefresh 网络请求框架 AFNetworking 图片加载框架 SDWebImage 模型转换...

  • 第十二章、第三方库相关

    一、AFNetworking框架分析 AFURLSessionManager、AFHTTPSessionManag...

  • AFNetworking框架

    downloadTask 1,urlSession的didReceiveChallenge2,didWriteDa...

  • AFNetworking框架

    使用AFNetworking框架遇到的一个经典bug的解决方案 AFNetworking 3.0迁移指南(转载)

  • AFNetWorking框架

    1.AFN框架基本使用 1.1 AFN内部结构 1.2 AFN的基本使用 (1)发送GET请求的两种方式(POST...

  • AFNetworking粗解

    框架GitHub地址AFNetworking 构造: NSURLSession AFURLSessionManag...

  • 2018-08-06

    #AFNetworking源码阅读系列 一 前言: AFNetWorking一款轻量级网络请求开源框架,基于iOS...

网友评论

      本文标题:AFNetworking框架预览

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