swift-NetworkSample基于AFNetworking 3.0的网络封装库
Swift 的网络封装一直是绕不过去的一块,尤其你要各种求、上传下载、错误啥的,手写一套不太现实。swift-NetworkSample就是个挺实用的轮子,基于AFNetworking 3.0
封装的,API 写得蛮清爽,适合日常开发直接套用。
基本的GET
、POST
这些方法都有封,写起来顺手。比如求一个列表,几行代码就能搞定。支持的 HTTP 动作比较全,你要做增删改查,直接调接口就行,没啥门槛。
文件上传下载这块也没落下,图片、视频这些都能传,而且带进度回调,用来做进度条展示挺方便的。像用户上传头像、后台下 PDF 报告,基本都能满足。
进度监听算是它一个小亮点,上传下载都有细致的进度回调,你用progress
来更新 UI,体验会好不少,尤其在网络不是太稳的时候。
错误这方面也做得比较稳,一旦出错,不管是断网、超时,还是 500、404,都能捕捉到错误信息。你可以统一弹提示,或者做个重试策略。
异步这块是基于闭包,写起来直观又不卡 UI 线程。你发个求后回调结果,直接在主线程更新 UI,用户看着也舒服。
还有一个细节不错的点是Session 配置,你可以设定timeoutInterval
、自定义HTTP Header
,甚至能加代理,灵活性挺高,适合对接各种后端。
缓存策略也考虑到了,比如求数据能不能缓存、多久失效,都能自己设定。搞列表数据加载那种,体验提升。
如果你是 Swift 开发者,项目里又刚好需要网络求功能,不妨试试swift-NetworkSample
,省事不少,踩坑的概率也小。
swift-NetworkSample根据AFNetworking3.0框架封装的
预估大小:129个文件
AFURLSessionManager.h
29KB
AFSecurityPolicy.h
6KB
AFURLResponseSerialization.h
12KB
AFNetworkReachabilityManager.h
8KB
AFHTTPSessionManager.h
19KB
AFURLRequestSerialization.h
22KB
UIImageView+AFNetworking.h
6KB
UIRefreshControl+AFNetworking.h
2KB
UIProgressView+AFNetworking.h
2KB
AFAutoPurgingImageCache.h
6KB
215.22KB
文件大小:
评论区