2019独角兽企业重金招聘Python工程师标准>>>
之前一直在使用ASIHTTPRequest作为网络库,但是由于其停止更新,iOS7上可能出现更多的问题,于是决定更换网络库。
目前比较流行的网络库主要有AFNetworking和MKNetworkKit,经过一番google后,得出这三个库之间的比较如下:
| AFNetworking | MKNetworkKit | ASIHTTPRequest |
更新情况 | 维护和使用者相对多 | 维护和使用者相对少 | 停止更新 |
支持iOS和OSX | 是 | 是 | 是 |
ARC | 是 | 是 | 否 |
断点续传 | 否,可通过AFDownloadRequestOperation | 是 | 是 |
同步异步请求 | 只支持异步 | 否 | 是 |
图片缓存到本地 | 否,通过SDURLCache或AFCache | 否 | 否 |
图片缓存到内存 | 是 | 是 | 否 |
后台下载 | 是 | 是 | 是 |
下载进度 | 否,可通过AFDownloadRequestOperation | 是 | 是 |
缓存离线请求 | 否,通过SDURLCache或AFCache | 是 | 否 |
JSON、XML | 是 | 是 | 否 |
Etag | 否 | 是 | 否 |
COOKIEs | 否 | 否 | 是 |
https | 是 | 是 | 是 |
根据以上对比,AFNetworking虽然相比MKNetworkKit功能要弱一些,但是它的扩展性更强,而且维护者比较多,从长期来看要优于MKNetworkKit。
以上对比是根据本人测试及查资料所得,如有不正确的地方还希望大家指出,谢谢!