iOS对NSURLRequest提供了7种缓存策略,完美解决!
优采云 发布时间: 2021-07-10 06:06iOS对NSURLRequest提供了7种缓存策略,完美解决!
有些网页有时会显示在前端,但是发现网页内容改变时前端没有更新。这时候可能是网页请求加载的缓存策略有问题。
多种缓存策略
创建网络请求时,可以通过设置 NSURLRequest 的 cachePolicy 属性来设置请求的缓存策略。
iOS 为 NSURLRequest 提供了 7 种缓存策略:(实际上只能使用 4 种)
所以如果每次进入网页都想重新请求,应该使用NSURLRequestReloadIgnoringLocalCacheData,具体代码如下:
- (void)loadRequest {
if (![self.url hasPrefix:@"http"]) {//是否具有http前缀
self.url = [NSString stringWithFormat:@"http://%@",self.url];
}
NSURLRequest *request =[NSURLRequest requestWithURL:[NSURL URLWithString:self.url] cachePolicy:NSURLRequestReloadIgnoringLocalCacheData timeoutInterval:60];
if ([[[UIDevice currentDevice]systemVersion]floatValue] >= 8.0) {
[_wk_WebView loadRequest:request];
} else {
[_webView loadRequest:request];
}
}
那么就完美解决了!