在iOS9之后,之前使用的NSURLConnection被苹果舍弃,取而代之的是用NSURLSession完成相关的网络请求操作。自己最近在做缓存方面的工作,对这些知识点有点忘了,抽出点时间来整理一下。
一、NSURLSession基本概念
在WWDC2013中,Apple提出了NSURLSession,相当于是将NSURLConnection替换成了NSURLSessionConfiguration、NSURLSession以及NSURLSessionTask。
1、NSURLSessionConfiguration
NSURLSessionConfiguration是session的配置属性信息,可以通过该类配置session的工作模式:
+ (NSURLSessionConfiguration *)defaultSessionConfiguration;
+ (NSURLSessionConfiguration *)ephemeralSessionConfiguration;
+ (NSURLSessionConfiguration *)backgroundSessionConfiguration:(NSString *)identifier;
三种工作模式:
默认会话(default):默认的配置会将缓存存储到磁盘上
瞬时会话(ephemeral):不会创建持久性存储的缓存
后台会话(background):允许程序在后台进行上传下载工作
在NSURLSessionConfiguration对象中,可以设置session的一些属性,如timeoutIntervalForRequest(网络请求超时时间)、allowsCellularAccess(是否允许使用流量请求)
NSURLSession的知识总结
最新推荐文章于 2025-08-06 16:18:48 发布