(iOS-框架封装)AFN3.x 网络请求封装
2017-03-15 20:31
363 查看
AFNetworking
我项目里面的网络请求是一外包大牛基于
AFN2.x封装的基本网络请求,感觉其封装的贼好,对服务端返回的错误码统一处理,对返回的 json 数据下发给每个继承自基本网络请求的子网络请求 自己处理自己的数据,但是缺点就是AFN框架太老,不适合其他人使用。所以。。。
先瞅瞅效果哈~
网络请求
基于AFN3.x核心类
AFURLSessionManager封装的网络请求,支持 HTTPS 请求验证,可以配置请求头,支持多图上传并可选带进度回调,支持 block、delegate(代理) 请求回调,不带请求缓存,适合中小型项目开发使用
本来想着在项目原来的封装基础上修改,无奈从
AFN2.x向
AFN3.x迁移是一件多么不容易的事情,
AFN3.x删掉好多东西,特别是
AFHTTPRequestOperation,这里可以看我之前翻译的一篇迁移的文章AFNetworking
3.0迁移指南。
说明一下这个网络封装是3个月之前写好的,当时写的不完善,趁现在项目不忙,就重新修改完善一下,新增加了图片上传的代码。
使用方法
由效果图中看出,请求的回调方式有block、delegate。根据自己的爱好使用。
如图大致说明:
Demo结构
关于网络请求的封装是怎么成型的,这里就不叙述了,仔细循着方法看看,应该能看的懂,关于本基本网络请求 API 可以修改的地方,在此特意备注,为了兼容你项目,适合你使用。本 Demo 使用的是本公司的测试服务器域名,使用的时候要换成自己公司的,如下看图:
注意1:
注意1
注意2:
注意2
如
注意1和
注意2图说明,其对应的后台返回 json 数据格式如下(这是我公司的),修改的话根据自己公司的来做
后台返回 json 数据格式
关于子网络请求的使用说明看图:
子网络请求
看
子网络请求图,里面有个请求路径方法:
-requestURLPath;相信有些人对请求路径不是太明了,这里坐下介绍:
域名和参数之间的即为请求路径
如图:
请求路径
域名
举个栗子:
http://101.200.139.156/index.php/Api/chat/getFriendList?token=&uid=
域名:http://101.200.139.156
请求路径:/index.php/Api/chat/getFriendList
请求参数:token=&uid=
这样子我讲明白了吧
关于 HTTPS 验证的,xcode 工程中要导入你公司后台给的证书;
关于多图上传的自己看对应的代码,看2遍就懂了,不难的
声明:本 Demo 里面依赖的东西比较多,自己有兴趣使用的,多看看,好多 debug 调试的地方都用到了
通用的宏文件 CommonMacro.h,还有就是模型解析时候依赖了
Mantle,但是基本的请求 API 不用修改。
Demo 下载链接请点击
穿越源码
刹车了~ 不 bb 了,
充实的一天。。。
PS:千里之外,始于您手,万分喜爱源自点赞、评论+喜欢~
相关文章推荐
- iOS开发总结之block回调以AFN为基础封装的网络请求操作类
- IOS 网络请求框架封装
- IOS开发之—— 在AFN基础上进行的网络请求的封装
- iOS 对基于AFNetworking框架网络请求的简单封装
- iOS AFN 封装POST网络请求(AFURLSessionManager)
- iOS AFN 封装POST网络请求(AFURLSessionManager) (续一) upload表单提交方法
- iOS AFN监听网络,封装网络请求 —— HERO博客
- 对iOS网络请求的简单封装,并且使用block回调函数方式
- ios网络学习------8 xml格式数据的请求处理 用代码块封装
- ios AFN 网络请求失败 failed: unacceptable content-type: text/html application/x-javascript
- ios网络学习------8 xml格式数据的请求处理 用代码块封装
- iOS 网络请求框架AFNetworking使用方法(欢迎提建议和分享遇到的问题)
- iOS开发 封装网络请求 ——实例
- [iOS微博项目 - 3.3] - 封装网络请求
- 封装网络请求 - iOS网络篇
- iOS封装网络请求
- iOS经验1:自己写的网络数据请求 第三方框架 断点续传 上传下载
- iOS网络编程-ASIHTTPRequest框架同步请求
- iOS 自己封装的网络请求,json解析的类
- iOS简单封装网络请求,使用block回掉函数方式