ios - 2013年的ASIHTTPRequest和AFNetworking。该选择什么?

标签 ios cocoa-touch nsurlconnection afnetworking asihttprequest

我正在开始开发一个很大程度上基于网络的大型 iOS 项目。我感兴趣的是我现在应该选择什么框架。 我在 SO 上看到很多关于它的帖子:ASIHTTPRequest vs AFNetworking framework 等等。但他们都老了。我还读过这个:http://allseeing-i.com/%5Brequest_release%5D ; After giving it a lot of thought over the last few weeks, I’ve decided that I’m not going to continue working on ASIHTTPRequest in future.它是在 2011 年写的。据我了解 ASIHTTPRequest已经过时了吗?我在 iOS 方面没有太多经验。所以我对现代事物的状态很感兴趣。什么更好-ASIHTTPRequestAFNetworking ?我对下一个标准感兴趣:

  1. JSON 性能(与 NSJSONSerialization 集成)
  2. 丰富的 API(上传文件、http 查询)
  3. 简单
  4. iOS 6 和 future 的 iOS 7 集成

最佳答案

我会保持简短,以免过多强调这一点。我已经使用 ASIHTTP 和 AFNetworking 完成了许多 iOS 应用程序。

由于以下原因,我现在不再使用 ASIHTTPRequest:

  • 这是一个休眠项目,没有人参与或维护它。
  • 它尚未升级为使用 ARC(自动引用计数),因此当您必须使用 -fno-objc-arc 编译器开关来构建旧代码时,很明显您正在嵌入旧代码。
  • 它尚未更新为使用 block ,这使得开发回到了较旧的设计模式。

AFNetworking 是符合您大多数标准的不错选择,原因如下:

  • AFNetworking 并未处于休眠状态,并且正在积极做出贡献。 (如果添加了更多文件处理,那么这是接管 ASIHTTPRequest 的好地方)
  • JSON 性能 - 它与 NSJSONSerialization 集成并自动为您反序列化 json REST 请求。
  • API 非常干净且易于使用(使用 block ,因此您的代码也会更干净)但是,我建议使用其他东西来进行文件下载和上传,目前还不知道一个好的标准解决方案.
  • 简单,是的,非常简单。
  • 在 iOS 6 和 7 上使用它没有任何问题,最近刚刚在一个项目中使用过它,并且它已经为 iOS 7 做好了准备。

希望这有帮助。

关于ios - 2013年的ASIHTTPRequest和AFNetworking。该选择什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18595809/

相关文章:

objective-c - 通过 KVC 访问集合(以保护集合并符合 KVO)

iphone - NSURLConnection 下载委托(delegate)方法未被调用

objective-c - 重写的 getter 不会触发其他选择器

ios - 初始化CBService时出错

ios - 应用在后台时读取 APNS 有效负载

ios - 快速 URL 处理

objective-c - iOS App在调用方法时等待HTTP响应?

ios - 无法获取 UICollectionView 当前页面

cocoa-touch - 为 Interface Builder 创建自定义按钮

iphone - 从通知中心清除通知