iOS缓存策略行为UIWebView

时间:2013-06-28 05:12:13

标签: ios objective-c caching nsurlrequestcachepolicy

我正在使用UIWebview并将NSMutableURLRequest加载到其中:

NSMutableURLRequest* req = [NSMutableURLRequest requestWithURL:initialURL cachePolicy:NSURLRequestReloadIgnoringLocalCacheData timeoutInterval:10.0];
[_webview loadRequest:req];

当在另一个UIWebview(一种起始页)内部点击一个链接时,会加载此请求。

使用WireShark查看网络流量时,最初会捕获150个请求。 导航回到起始页并再次打开链接应该再次报告150个请求,但事实并非如此。只捕获了大约100个请求。缺少的是一些CSS文件,PNG,字体,JSON和XML。

在关闭整个应用程序之后,按预期捕获150个请求。看起来UIWebView本身正在缓存一些数据而忽略了设置缓存策略。

有没有办法强制UIWebView根据其策略加载资源?

1 个答案:

答案 0 :(得分:0)

问题的答案是将目标URL中的代码的NSURLRequest的缓存策略设置为NSURLRequestReloadIgnoringLocalAndRemoteCacheData,将Swift代码的.reloadIgnoringLocalAndRemoteCacheData设置为