缓存整个网站-Swift

时间:2018-08-22 14:09:41

标签: ios swift caching wkwebview offline

在我的应用程序中,用户可以打开一个网站。该网站内容繁重(平均20MB)。我的许多用户始终无法访问互联网,因此至关重要的是,我们保存他们打开的所有内容(同时查看)。然后,下次他们打开它时,它将完全从磁盘加载。

这就是我的想法:

  1. 使用UIWebView并缓存所有可用的..文件,但UIWebview已弃用。
  2. 使用WKWebView,但我无法缓存所有内容:(我什至不确定我是否可以拦截所有请求和响应。
  3. 在应用内使用代理服务器,并保存所有从远程服务器加载的数据,我不知道如何启动它。

基本上,我想要类似于https://github.com/evermeer/EVURLCache的东西 但是对于WKWebView

问题: 您推荐哪种方法?我该如何克服上述缺点?

1 个答案:

答案 0 :(得分:0)

使用WKWebView,您可以使用URLRequests加载网站数据并进行缓存。可以在initialization期间在其缓存策略中配置URLRequest。

init(url URL: URL, 
cachePolicy: NSURLRequest.CachePolicy, 
timeoutInterval: TimeInterval)

您可以尝试继续使用returnCacheDataElseLoad。但是,即使主要使用高速缓存,也可能无法满足您的特定情况。看看this关于应用程序缓存和WKWebView的答案。

相关问题