AFNetworking的实现原理
2016-03-23 15:08
281 查看
自从使用了第一次使用AFNetworking到现在有些时候了,一直没有深究这个类库,内部的具体实现原理和步骤,虽然不影响使用,总觉得自己很外行,于是,结合前人的经验和API的介绍,大致做一些总结,不一定都对,嘿嘿有可能会有不少错误,多多指教.
2)构建multipart请求
先介绍这么多,等我深入学习再分享
1.AFURLConnectionOperation
继承自NSOperation类,将网络请求这个工作放在一个operation上.可以非常有效的帮助我们去控制\观察一个网络请求的的创建\进行\完成\暂停回复\异常等问题状态.2.AFHTTPRequestionOperation
HTTP或HTTPS协议请求的AFURLConnectionOperation的子类.它封装了可接受状态码和内容的类型,判定一个请求结果是成功或失败,实际上对系统的HTTP网络请求增加了几个HTTP需要用到的参数.3.AFHTTPRequestOperationManager
这个类是AFN类的核心库.可以帮助我们轻松地完成请求的创建\响应的系列化,网络状态的监控以及安全策略以及每一个请求operation的管理4.AFURLSessionManager
iOS7 之后,苹果增加了新的网络请求类--NSURLSession。AFN官方推荐iOS 7 或者 Mac OS X 10.9以上的,最好使用该类发起网络请求,取代AFHTTPRequestOperationManager。不过基于目前国内app大都最低适配的 iOS6,该类的用途还不是太广泛。NSURLSession的说明或者使用不再赘述。自行查看API文档。以后有时间再加上该类的使用。5.AFNetworkReachabilityManager
网络的联通状态监控以及网络的类型.实际是将苹果官方提供的Reachability的类更换一下,防止和系统提供的类的通知名以及类名的冲突.6.AFSecurityPolicy
7.AFURLRequestSerialization
1)符合这个协议的对象用于处理请求,它将请求参数转换为query string 或是entity body 的形式,并设置必要的header2)构建multipart请求
8.AFURLResponseSerialization
遵循AFURLResponseSerialization协议的对象,用于验证\序列化响应及相关数据,转换为有用的形式,比如JSON对象\图像\甚至基于mantle的模型对象先介绍这么多,等我深入学习再分享
相关文章推荐
- android 系统版本信息工具类 获取设备型号 设置屏幕亮度 软键盘 获取屏幕高度宽度
- easyUI Layout自适应窗口大小
- EF Profiler 查看跟踪Entity Framework SQL 语句
- iOS UIView的几个layout方法-layoutSubviews、layoutIfNeeded、setNeedsLayout
- 不要暴露.git
- 在Global.asax文件里实现通用防SQL注入漏洞程序(适应于post/get请求)
- [C++][语言语法]标准C++中的string类的用法总结
- 3n+1问题
- jni生成头文件
- 系统设计的角度看GlusterFS&&ceph
- C++中继承与多态
- Cell上删除按钮
- Linux(Ubuntu)入门
- elasticsearch2.21 windows安装
- Java实现查找替换功能
- 通过java.net.URLConnection发送HTTP请求的方法
- 滑动监听的方法
- 13、EL表达式简介
- Cg入门8:Vertex Shader - 更好的数据组织方式struct
- 开启博客之旅