iOS 第三方开源库----->AFNetworking

jopen 9年前


AFNetworking是一个为 iOS 和 Mac OSX 制作的令人愉快的网络库,它建立在URL 装载系统框架的顶层,内置在Cocoa里,扩展了强有力的高级网络抽象。它的模块架构被良好的设计,拥有丰富的功能,因此,使用起来,必定赏心悦目。

原文链接https://github.com/AFNetworking/AFNetworking

介绍

1.支持HTTP请求和基于REST的网络服务(包括GET、POST、 PUT、DELETE等)

2.支持ARC

3.要求iOS 5.0及以上版本

4.UIKit扩展

配置

1.下载 AFNetworking ,将2个文件夹:AFNetworking和UIKit+AFNetworking拖入工程

2.导入以下库文件:CFNetwork、Security、SystemConfiguration、MobileCoreServices

3.如果你以前用的是1.0版本,那么 AFNetworking 2.0 Migration Guide 能帮助你

4.如果你是用CocoaPods配置的,那么

platform:ios,'7.0'

pod"AFNetworking","~>2.0"

使用

1.HTTP请求操作

AFHTTPRequestOperationManager封装的共同模式与web应用程序通过HTTP通信,包括创建请求,响应序列化,网络可达性监控、运营管理和安全,以及请求。

GET请求

iOS 第三方开源库----->AFNetworking

POST请求

 

POST请求(多表)

iOS 第三方开源库----->AFNetworking

2.AFURLSessionManager(NSURLSession详细见 网络编程(6) )

创建和管理制定的NSURLSession对象NSURLSessionConfiguration对象必须实 现<NSURLSessionTaskDelegate>, <NSURLSessionDataDelegate>, <NSURLSessionDownloadDelegate>, <NSURLSessionDelegate>协议

创建一个下载任务

iOS 第三方开源库----->AFNetworking

创建一个上传任务

iOS 第三方开源库----->AFNetworking

创建一个带多表,进度的上传任务

iOS 第三方开源库----->AFNetworking

创建一个数据流Data任务

iOS 第三方开源库----->AFNetworking

3.网络监测(一般会用另一个网络监测类,Reachability,还有JSON解析方法,反正我也一般不用,自行脑补)

AFNetworkReachabilityManager监控网络领域的可达性,WWAN地址和WiFi接口.

当前网络状态

iOS 第三方开源库----->AFNetworking

HTTP Manager 可达性

4.AFHTTPRequestOperation

AFHTTPRequestOperation是使用HTTP或HTTPS协议的AFURLConnectionOperation的子类。

它封装的获取后的HTTP状态和类型将决定请求的成功与否。虽然AFHTTPRequestOperationManager通常是最好的去请求的方式,但是AFHTTPRequestOpersion也能够单独使用。

GET请求

iOS 第三方开源库----->AFNetworking  

批量多请求

iOS 第三方开源库----->AFNetworking

其他资料

1. 官网

2. 英文文档