我正在使用Swift开发一个应用程序。我想调用REST API。我发现有两个流行的图书馆,AFNetworking和Alamofire。但我不知道哪个更好(更受欢迎或有更多功能)。
有人能说出Alamofire和AFNetworking之间的主要区别是什么?
答案 0 :(得分:72)
如果您使用Objective-C
,请使用AFNetworking
如果您使用Swift
,请使用Alamofire
答案 1 :(得分:62)
AFNetworking
和Alamofire
由同一个人(Alamofire Software Foundation),Alamofire
是他们的Swift版本,而AFNetworking
是Objective-C版本。
功能明智,他们是一样的。
答案 2 :(得分:9)
如果您使用Objective-C
开发应用,则必须使用AFNetworking.
另外,如果您使用Swift
进行开发,请尝试使用最新版本的Alamofire.
在两个库中,网络是异步完成的。唯一不同的是,由于缺乏对框架的支持,iOS 7不再支持Alamofire。
答案 3 :(得分:7)
AFNetworking:
Alamofire:
如果您擅长Objective-C,请使用AFNetworking。如果没有,请使用Alamofire。它很简单,Swift可以使用很多资源。
答案 4 :(得分:3)
AFNetworking 是用于iOS,macOS和tvOS的Objective-C网络库。它是一个已经存在多年的强大库。从基本网络到高级功能(例如网络可达性和SSL固定),AFNetworking都具备。它是有史以来最受欢迎的iOS库之一,下载量接近5000万。
Alamofire 是AFNetworking的后继产品,但使用Swift编写。这两个库具有相似的功能集,主要区别在于它们的编写语言。
如果您要启动一个全新的Swift项目,我的建议是使用Alamofire,以便您的核心网络库与您自己的源代码一致。否则,AFNetworking和Alamofire都是不错的选择。
来源:Raywenderlich