博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
iOS中ASIHTTPRequest和AFNetworking的区别
阅读量:3756 次
发布时间:2019-05-22

本文共 780 字,大约阅读时间需要 2 分钟。

注 : AFNetworking持续更新状态 在iOS7 之后AFNetworking也更新到3.0

ASIHTTPRequest2012年已经不在维护了(比较吊)

1.底层实现

(1) AFN的底层基于OC的NSURLConnection和NSURLSession

(2) ASI的底层基于纯C语言的CFNetwork框架

(3) ASI的运行性能高于AFN

2.对服务器返回的数据处理

(1) ASI没有直接提供对服务器数据处理的方式,直接返回data\string

(2) AFN提供了多种对服务器数据处理的方式

  • JSON处理

  • XML处理

  • 其他处理

3.监听请求的过程

(1) AFN提供了success和failure两个block来监听请求的过程(只能监听成功和失败)

  • success : 请求成功后调用

  • failure : 请求失败后调用

(2) ASI提供了3套方案,每一套方案都能监听请求的完整过程

(监听请求开始、接收到响应头信息、接受到具体数据、接受完毕、请求失败)

  • 成为代理,遵守协议,实现协议中的代理方法

  • 成为代理,不遵守协议,自定义代理方法

  • 设置block

4.在文件下载和文件上传的使用难易度

(1) AFN

  • 不容易监听下载进度和上传进度

  • 不容易实现断点续传

  • 一般只用来下载不大的文件

(2) ASI

  • 非常容易实现下载和上传

  • 非常容易监听下载进度和上传进度

  • 非常容易实现断点续传

  • 下载或大或小的文件都行

5.ASI提供了更多的实用功能

(1) 控制圈圈要不要在请求过程中转

(2) 可以轻松地设置请求之间的依赖:每一个请求都是一个NSOperation对象

(3) 可以统一管理所有请求(还专门提供了一个叫做ASINetworkQueue来管理所有的请求对象)

  • 暂停\恢复\取消所有的请求

  • 监听整个队列中所有请求的下载进度和上传进度

转载地址:http://clvsn.baihongyu.com/

你可能感兴趣的文章
011 力扣 整数反转
查看>>
012 力扣31.下一个排列
查看>>
基于百度AI平台的语音识别功能开发-SDK调用
查看>>
第二章 知识表示
查看>>
第一章 绪论
查看>>
第三章 自动推理
查看>>
第四章 知识图谱
查看>>
第五章 搜索技术
查看>>
第六章 进化智能和群体智能
查看>>
第七章 机器学习
查看>>
力扣 922. 按奇偶排序数组 II
查看>>
Python3实现基于百度AI开放平台和图灵机器人API聊天机器人
查看>>
python面向对象学习
查看>>
智能客服搭建(1)——了解专业话术
查看>>
智能客服搭建(2)——对话系统分类以及对话系统话术设计注意事项
查看>>
智能客服搭建(3)——五步构建一个对话系统(统筹全局)
查看>>
智能客服搭建(4)——UNIT概览和专业术语介绍
查看>>
智能客服搭建(0)——写在前面
查看>>
智能客服搭建(5)——5步骤之一定义对话系统
查看>>
python之禅
查看>>