AFNetworking网络请求封装框架
AFNetworking 的封装思路挺清晰的,尤其对 iOS 开发来说,用它网络求真的省事。你不用关心底层 URLSession
的各种配置,直接发起 GET
、POST
就行,参数也好传,响应也好,像写本地函数一样轻松。平时遇到文件上传下载、后台下载这些需求,它也都帮你兜住了,还带进度回调,做得挺细。
AFNetworking 的求模块,用起来舒服。比如你只要写:
[manager GET:@"https://api.example.com/data" parameters:nil progress:nil success:^(NSURLSessionTask *task, id responseObject) {
NSLog(@"JSON: %@", responseObject);
} failure:^(NSURLSessionTask *operation, NSError *error) {
NSLog(@"Error: %@", error);
}];
是不是看着就眼熟?上手快,维护也轻松。
安全性方面也不马虎。SSL 验证、证书配置它都管,默认策略比较保守,适合生产环境。如果你要搞自签名证书,它也能自定义 securityPolicy
。
它的缓存策略也挺实用的,响应会根据 HTTP Header 自带策略自动缓存,节省不少求。如果你搞的是新闻类、图片类 App,这块就挺重要。
还有一点值得夸,兼容性好。iOS/macOS/tvOS/watchOS 都能用,换平台不用重写逻辑,改改配置就能跑。
如果你在做 iOS App,是还没上手 Alamofire,或者项目还在用 Objective-C,那你一定得看看 AFNetworking 的源码。AFHTTPSessionManager
和 AFURLSessionManager
的设计思路,拿来参考或者二次封装,都是一手干货。
资源包是 afnetworking
,主分支 AFNetworking-master
代码稳定,结构也清楚,建议直接克隆下来读一读。要是你对网络通信还不太熟,这套源码绝对是提升的捷径。
456.16KB
文件大小:
评论区