Swift Alamofire VS AFNetworking

时间:2015-10-07 09:18:20

标签: ios swift afnetworking alamofire

我正在使用Swift开发一个应用程序。我想调用REST API。我发现有两个流行的图书馆,AFNetworking和Alamofire。但我不知道哪个更好(更受欢迎或有更多功能)。

有人能说出Alamofire和AFNetworking之间的主要区别是什么?

5 个答案:

答案 0 :(得分:72)

如果您使用Objective-C

,请使用AFNetworking

如果您使用Swift

,请使用Alamofire

答案 1 :(得分:62)

AFNetworkingAlamofire由同一个人(Alamofire Software Foundation),Alamofire是他们的Swift版本,而AFNetworking是Objective-C版本。

功能明智,他们是一样的。

答案 2 :(得分:9)

如果您使用Objective-C开发应用,则必须使用AFNetworking.

另外,如果您使用Swift进行开发,请尝试使用最新版本的Alamofire.

在两个库中,网络是异步完成的。唯一不同的是,由于缺乏对框架的支持,iOS 7不再支持Alamofire。

答案 3 :(得分:7)

AFNetworking:

  • 这是图书馆的目标-C版本。
  • 这是非常强大的,您可以在Swift项目中安装它,并将其用作swift项目的桥梁。

Alamofire:

  • 这是AFNetworking的Swift版本。
  • 但并非所有AFNetworking功能都包含在内。

如果您擅长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