用户工具

站点工具


ios_web_cache

差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

后一修订版
前一修订版
ios_web_cache [2021/04/25 14:15] – 创建 jiajiios_web_cache [2024/02/04 04:48] (当前版本) – 外部编辑 127.0.0.1
行 1: 行 1:
 ## iOS 缓存策略 ## iOS 缓存策略
  
-### 1NSURLRequestUseProtocolCachePolicy = 0, +1NSURLRequestUseProtocolCachePolicy = 0, 
 默认的缓存策略, 如果缓存不存在,直接从服务端获取。如果缓存存在,会根据response中的Cache-Control字段判断下一步操作, 默认的缓存策略, 如果缓存不存在,直接从服务端获取。如果缓存存在,会根据response中的Cache-Control字段判断下一步操作,
 如: Cache-Control字段为must-revalidata, 则询问服务端该数据是否有更新,无更新的话直接返回给用户缓存数据,若已更新,则请求服务端. 如: Cache-Control字段为must-revalidata, 则询问服务端该数据是否有更新,无更新的话直接返回给用户缓存数据,若已更新,则请求服务端.
  
-### 2NSURLRequestReloadIgnoringLocalCacheData = 1, +2NSURLRequestReloadIgnoringLocalCacheData = 1, 
 忽略本地缓存数据,直接请求服务端. 忽略本地缓存数据,直接请求服务端.
  
-### 3NSURLRequestIgnoringLocalAndRemoteCacheData = 4, +3NSURLRequestIgnoringLocalAndRemoteCacheData = 4, 
 忽略本地缓存,代理服务器以及其他中介,直接请求源服务端. 忽略本地缓存,代理服务器以及其他中介,直接请求源服务端.
  
-### 4NSURLRequestReloadIgnoringCacheData = NSURLRequestReloadIgnoringLocalCacheData+4NSURLRequestReloadIgnoringCacheData = NSURLRequestReloadIgnoringLocalCacheData
  
-### 5NSURLRequestReturnCacheDataElseLoad = 2, +5NSURLRequestReturnCacheDataElseLoad = 2, 
 有缓存就使用,不管其有效性(即忽略Cache-Control字段), 无则请求服务端. 有缓存就使用,不管其有效性(即忽略Cache-Control字段), 无则请求服务端.
  
-### 6NSURLRequestReturnCacheDataDontLoad = 3, +6NSURLRequestReturnCacheDataDontLoad = 3, 
 死活加载本地缓存. 没有就失败. (确定当前无网络时使用) 死活加载本地缓存. 没有就失败. (确定当前无网络时使用)
  
-### 7NSURLRequestReloadRevalidatingCacheData = 5, +7NSURLRequestReloadRevalidatingCacheData = 5, 
 缓存数据必须得得到服务端确认有效才使用(貌似是NSURLRequestUseProtocolCachePolicy中的一种情况) 缓存数据必须得得到服务端确认有效才使用(貌似是NSURLRequestUseProtocolCachePolicy中的一种情况)
 +
 +### 参考链接
 +
 +[iOS web缓存策略以及手动清除缓存](https://www.jianshu.com/p/bb1f987513e4)
ios_web_cache.1619360109.txt.gz · 最后更改: (外部编辑)