我正准备为 iPad 开发一个应用程序,它有大量的后台线程网络调用。
我想知道哪个更好? ASIHTTPRequest 仍然有效但未维护。然而,很少有消息称 AFNetworking 框架会造成很多并发症。
最佳答案
更新(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 好得多(可能不是正确的词:“精炼”,也许)。就是说,您不应该期待“同类”替换,并且有些事情您可能需要考虑其他选项(例如,ASI 支持开箱即用的 Amazon S3)。但总的来说,我真的很高兴,发现它是一个清晰、文档齐全的库。因此,如果您希望从 ASI 转移到其他东西,AFNetworking 绝对不会出错...
关于iphone - ASIHTTPRequest 与 AFNetworking 框架,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8636418/