cachingWKWebView

我在自定义互联网浏览器遇到问题。 我正在使用WKWebView。 我在我的应用程序中有选项卡。 如果我点击一个标签,在WKWebView中加载新的NSURLRequest。 我需要实现一个caching。 如果用户按下一个标签,我宁愿加载caching数据而不是新的。 不幸的是,这段代码不起作用:

NSURLRequest *request = [[NSURLRequest alloc] initWithURL:URL cachePolicy:NSURLRequestReturnCacheDataElseLoad timeoutInterval:0.0]; [self.webView loadRequest:request]; 

你可以指导我如何实现cachingWKWebView?

如果您使用NSURLRequestUseProtocolCachePolicy (默认值),则不需要执行任何其他操作。 该策略会自动查看来自服务器的响应,以决定是否应该实际进行并再次获取数据。

如果服务器使用Cache-Control HTTP头并为其响应设置了最大时间,NSURLSession将遵循这一点,并在caching的响应到期之前返回。

我通常会从服务器加载,如果我有互联网连接。 否则,我从caching中加载。

  if reachability.isReachable { urlRequestCache=NSURLRequest(URL: url!, cachePolicy: NSURLRequestCachePolicy.UseProtocolCachePolicy, timeoutInterval: 10) } else { urlRequestCache = NSURLRequest(URL: url!, cachePolicy: NSURLRequestCachePolicy.ReturnCacheDataElseLoad, timeoutInterval: 60) } theWebView.loadRequest(urlRequestCache)