ASIHTTPRequest与AFNetworking框架

时间:2011-12-26 14:00:12

标签: iphone objective-c ios asihttprequest afnetworking

我即将开发一个iPad应用程序,它有大量的后台线程网络调用。

我想知道哪一个更好? ASIHTTPRequest仍然有效,但没有维护。然而,很少有消息称AFNetworking框架会产生很多复杂因素。

2 个答案:

答案 0 :(得分:52)

更新(2013年9月)

自从我最初写这个答案以来已经将近两年了,而且已经发生了很多变化。 AFNetworking即将进入2.0版并且拥有一个蓬勃发展的开发者社区,而ASIHTTPRequest几乎已经死了。此外,AFNetworking还有许多优秀的帮助程序库和类可用于处理OAuth,Amazon S3等内容。它很受欢迎,上面有几本书。

鉴于此,没有理由继续使用ASIHTTPRequest。我的原始答案如下,所以如果您仍然感兴趣,请继续阅读 - 请记住,我现在毫无疑问地建议不要使用ASIHTTPRequest并使用更现代的东西(即AFNetworking,但还有其他选择。)

原始答案(2011年12月)

你有多少时间?这是我的想法,虽然作为一个主观问题,我认为没有正确或错误的答案。

我领导一个开发团队,为大型客户开发商业应用程序,我的一些同事总是在寻找可以使事情变得更容易的新库。目前我猜绝大多数网络都使用ASIHTTP。大约六个月前我们看了AFNetworking,当时我们决定坚持我们所知道的。 ASI已经存在了一段时间,并且在线提供了更多的文档和有用的建议。它是一个坚实的代码库,并且已经存在很长时间以获得很多牵引力和尊重。

那说(希望那些不同意我上面所说的所有内容的人会继续阅读!),我想如果你现在重新开始,那么现在是时候继续做其他事了。甚至是developer of ASI thinks so。考虑到iOS 5带来的所有变化,我认为现代积极维护的框架如AFNetworking(还有其他选项,如RestKit)是一个不错的选择。

现在,你说某些人在他们的应用程序中使用AFNetworking时遇到了麻烦。但同样,一个快速的谷歌揭示了许多ASI有问题的人(有效与否)!我认为无论你使用什么框架,某个的人都会遇到麻烦,无论是通过框架的真正错误还是他们自己的限制。

所以考虑到这一切,我想我会潜入AFNetworking,看看你是如何继续下去的!我的新年决议之一将是迁移到一个新的网络库,我认为它可能是AFNetworking。

来自作者的评论:

一点点更新:我真的很喜欢使用AFNetworking,并且在很多方面它比ASI要好得多(可能不是正确的词:'精致')。也就是说,你不应该期待一个“喜欢喜欢”的替代品,并且有些事情你可能想要考虑其他选项(亚马逊S3,例如ASI支持开箱即用)。但我一般都非常高兴,并且发现它是一个清晰,文档齐全的库。因此,如果您希望从ASI转移到其他地方,那么AFNetworking真的不会出错......

答案 1 :(得分:1)

https://github.com/BoydYang/BYRequest BYRequest基于MKNetowrkKit,但它的工作方式类似于ASIHttpRequest,因此您可以轻松地将项目从ASIHttpRequest迁移到BYRequest,并享受ARC。