我想缓存我的webview内容加载速度更快SWIFT3

问题描述:

到目前为止,我试过这个,但我得到连接超时错误。如何更快地加载网页视图与缓存的任何人都可以帮忙吗?(swift3)我想缓存我的webview内容加载速度更快SWIFT3

这里是我的代码

import UIKit 

class test:UIViewController, NSURLConnectionDelegate{ 
var response: URLResponse? 
var error: NSError? 
var NSURLRequestReturnCacheDataElseLoad = 2 
var sesson:URLSession! 
var progressView:UIProgressView! 
var urlData: Data? 
var baseURLString: String = "https://google.com" 

@IBOutlet weak var SubscribeWeb: UIWebView! 

override func viewDidLoad() { 
    super.viewDidLoad() 

    var urlString: String = URL(fileURLWithPath: baseURLString).appendingPathComponent("/").absoluteString 

    print("connection urlString = \(urlString)") 
    let request = URLRequest(url: URL(string : urlString)!, 
          cachePolicy:NSURLRequest.CachePolicy.returnCacheDataElseLoad, 
          timeoutInterval: 100.0) 
    print("connection request = \(request)") 
    // var request = URLRequest(url: URL(string: urlString), cachePolicy: URLRequestReturnCacheDataElseLoad, timeoutInterval: 10.0) 
    var connection = NSURLConnection(request: request, delegate: nil) 
    print("connection = \(connection)") 
    if (connection != nil) { 

     do 
     { 

      try self.urlData = NSURLConnection.sendSynchronousRequest(request, returning: &response)// 
      print("self.urlData = \(self.urlData)") 
     } 
     catch (let e) { 
      print("error = \(e)") 
     } 



     let htmlString = String(data: urlData!, encoding: String.Encoding.utf8) 
     //String(urlData,encode(with: String.Encoding.utf8)) 
     // var htmlString = String(urlData, encoding: String.Encoding.utf8) 

     let fileUrl = Foundation.URL(string: baseURLString) 


     SubscribeWeb.loadHTMLString(htmlString!, baseURL: fileUrl) 
     //SubscribeWeb.loadHTMLString(<#T##string: String##String#>, baseURL: <#T##URL?#>) 
    } 
    //ara test 
    //  let url = NSURL (string: "https://google.com/") 
    //  let requestObj = URLRequest(url: url! as URL, 
    //           cachePolicy:NSURLRequest.CachePolicy.returnCacheDataElseLoad, 
    //           timeoutInterval: 10.0) 
    //  // let requestObj = URLRequest(url: url! as URL) 
    //  SubscribeWeb.loadRequest(requestObj) 
    // Do any additional setup after loading the view, typically from a nib. 
} //ara test 
+0

它看起来像你的文章主要是代码;请添加更多的细节。 –

+0

当我尝试将一个半大页面加载到Web视图中时,需要时间加载。我想要缓存该文件或做一些事情,使该网页加载到网页视图更快.. – solArise

不知道,但你必须在当地通过URL此文件中创建的.html文件和写入数据。可能是工作。

+0

这听起来合乎逻辑将尝试它 – solArise