官方源码是这样的
public enum CachePolicy : UInt {
case useProtocolCachePolicy
case reloadIgnoringLocalCacheData
case reloadIgnoringLocalAndRemoteCacheData
public static var reloadIgnoringCacheData: NSURLRequest.CachePolicy { get }
case returnCacheDataElseLoad
case returnCacheDataDontLoad
case reloadRevalidatingCacheData
}
- useProtocolCachePolicy 默认的cache policy,使用Protocol协议定义。
- reloadIgnoringLocalCacheData 忽略缓存直接从原始地址下载。
- returnCacheDataDontLoad 只使用cache数据,如果不存在cache,请求失败;用于没有建立网络连接离线模式
- returnCacheDataElseLoad 只有在cache中不存在data时才从原始地址下载。
- reloadIgnoringLocalAndRemoteCacheData 忽略本地和远程的缓存数据,直接从原始地址下载,与NSURLRequestReloadIgnoringCacheData类似。
- reloadRevalidatingCacheData :验证本地数据与远程数据是否相同,如果不同则下载远程数据,否则使用本地数据