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