美文网首页自己尝试等装一下学学人家的框架复制粘贴
贼好用的 AFN3.x 网络请求封装,支持HTTPS验证,多图上

贼好用的 AFN3.x 网络请求封装,支持HTTPS验证,多图上

作者: 黃小梦 | 来源:发表于2017-03-15 19:07 被阅读1784次

    网络请求

    基于AFN3.x核心类AFURLSessionManager封装的网络请求(参考了点ytk),支持 HTTPS 请求验证,可以配置请求头,支持多图上传并可选带进度回调,支持 block、delegate(代理) 请求回调,不带请求缓存

    本来想着在项目原来的封装基础上修改,无奈从 AFN2.xAFN3.x 迁移是一件多么不容易的事情,AFN3.x删掉好多东西,特别是AFHTTPRequestOperation,这里可以看我之前翻译的一篇迁移的文章AFNetworking 3.0迁移指南

    说明一下这个网络封装是3个月之前写好的,当时写的不完善,趁现在项目不忙,就重新修改完善一下,新增加了图片上传的代码。

    使用方法

    由效果图中看出,请求的回调方式有 block、delegate。根据自己的爱好使用。
    如图大致说明:

    Demo结构

    关于网络请求的封装是怎么成型的,这里就不叙述了,仔细循着方法看看,应该能看的懂,关于本基本网络请求 API 可以修改的地方,在此特意备注,为了兼容你项目,适合你使用。本 Demo 使用的是本公司的测试服务器域名,使用的时候要换成自己公司的,如下看图:

    注意1:

    注意1

    注意2:

    注意2

    注意1注意2 图说明,其对应的后台返回 json 数据格式如下(这是我公司的),修改的话根据自己公司的来做

    后台返回 json 数据格式

    关于子网络请求的使用说明看图:


    子网络请求

    子网络请求图,里面有个请求路径方法:-requestURLPath;相信有些人对请求路径不是太明了,这里坐下介绍:
    域名和参数之间的即为请求路径
    如图:

    请求路径 域名

    举个栗子:
    http://102.302.123.215/index.php/api/talk/getFriend?token=&uid=
    域名:http://102.302.123.215
    请求路径:/index.php/api/talk/getFriend
    请求参数:token=&uid=
    这样子我讲明白了吧

    关于 HTTPS 验证的,xcode 工程中要导入你公司后台给的证书;
    关于多图上传的自己看对应的代码,看2遍就懂了,不难的

    声明:本 Demo 里面依赖的东西比较多,自己有兴趣使用的,多看看,好多 debug 调试的地方都用到了通用的宏文件 CommonMacro.h,还有就是模型解析时候依赖了Mantle,但是基本的请求 API 不用修改。

    Demo 下载链接请点击 穿越源码

    刹车了~ 不 bb 了,
    充实的一天。。。

    PS:千里之外,始于您手,万分喜爱源自点赞、评论+喜欢~

    相关文章

      网友评论

      • findM:不喜欢这样的设计 感觉好麻烦
      • 华子小筑:看了一下源码,第一印象想到的是猿题库的网络请求库:smile:
      • 十一岁的加重:接口三百个,就会增加三百个类
        黃小梦:@十一岁的加重 好吧 大神 膜拜
        十一岁的加重:@黃荳芽 我做过325个接口
        黃小梦:@十一岁的加重 厉害 我现在还没见过300个的 :sweat:
      • 不愿透漏姓名的s:支持 HTTPS 请求验证 这个客户端需要做什么么?不做任何改动https也能访问么?
        黃小梦:@不愿透漏姓名的s 文章中、Demo 中有说明,把证书导入 xcode 里面,然后在基类请求.m 文件里面修改有个验证 HTTPS 的方法
      • angelababa:cookie怎么设置、、
        黃小梦:@angelababa 自己根据项目封装的,项目没用到cookie ,就没考虑他

      本文标题:贼好用的 AFN3.x 网络请求封装,支持HTTPS验证,多图上

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