Swift Alamofire VS AFNetworking

Swift Alamofire VS AFNetworking

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

谁能指出 Alamofire 和 AFNetworking 之间的主要区别是什么?

如果您使用 Objective-C

,请使用 AFNetworking

如果使用Swift

,则使用Alamofire

AFNetworking and Alamofire are by the same people (the Alamofire Software Foundation),Alamofire 是他们的 Swift 版本,而 AFNetworking 是 Objective-C 版本。

在功能方面它们是相同的。

如果您使用 Objective-C 开发应用程序,那么您必须使用 AFNetworking.

否则,如果您正在使用 Swift 进行开发,请尝试使用最新版本的 Alamofire.

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

AF 网络:

  • 这是库的 objective-C 版本。
  • 这非常强大,您可以将其安装到您的 Swift 项目中,并将其用作通往 swift 项目的桥梁。

Alamofire:

  • 这是 AFNetworking 的 Swift 版本。
  • 但并非包括AFNetworking 的所有功能。

如果您擅长 Objective-C 使用 AFNetworking。如果没有,请使用 Alamofire。 Swift.

很简单,有很多资源可用

AFNetworking 是用于 iOS、macOS 和 tvOS 的 Objective-C 网络库。它是一个已经存在多年的强大库。从基本网络到网络可达性和 SSL Pinning 等高级功能,AFNetworking 应有尽有。它是有史以来最受欢迎的 iOS 库之一,下载量接近 5000 万。

Alamofire是AFNetworking的继任者,但是写在Swift。这两个库共享相似的功能集,主要区别在于编写它们所用的语言。

如果您正在开始一个全新的 Swift 项目,我的建议是使用 Alamofire,以便您的核心网络库与您自己的源代码保持一致。否则,AFNetworking 和 Alamofire 都是不错的选择。

资料来源:雷文德利希