AFNetWorking 结构
AFURLSessionManager
AFURLSessionManager创建了NSURLSession的对象,实现了NSURLSession代理,使用线程管理并发的请求创建和回调,通过KVO监听网络请求状态的变化。
请求创建队列:
请求回调队列:
在使用时,外部定义了completionGroup后,可以实现group里所有请求完成后返回,如果没有定义,每完成一个网络请求回调一次。
AFHTTPSessionManager
AFHTTPSessionManager继承自AFURLSessionManager,提供了GET、POST、PUT等请求方法,默认使用键值对请求序列和JSON应答序列。
一般的使用方法:
然后在代理URLSession:task:didCompleteWithError:中序列化数据并通过self.completionHandler(task.response, responseObject, serializationError)回传。