美文网首页iOS开发
WKWebView清除缓存

WKWebView清除缓存

作者: HeavenWong | 来源:发表于2018-07-02 09:47 被阅读35次

    一. UIWebView清楚缓存

    • 在使用WKWebView之前使用的是UIWebView, 清除缓存的方式两种:
    1. NSURLCache 和 NSHTTPCookieStorage 对象的清除方式
     NSHTTPCookie *cookie;
        NSHTTPCookieStorage *storage = [NSHTTPCookieStorage sharedHTTPCookieStorage];
        for (cookie in [storage cookies]) {
            [storage deleteCookie:cookie];
        }
        NSURLCache *cache = [NSURLCache sharedURLCache];
        [cache removeAllCachedResponses];
        [cache setMemoryCapacity:0];
        [cache setDiskCapacity:0];
    
    
    1. NSURLRequest对象的不缓存机制:NSURLRequestReloadIgnoringCacheData
    
    //NSURLRequest *urlRequest = [NSURLRequest requestWithURL:_url cachePolicy:NSURLRequestReloadIgnoringCacheData timeoutInterval:15.0];
    //[self.web_view loadRequest:urlRequest];
    [self.web_view loadRequest:[NSURLRequest requestWithURL:_url cachePolicy:NSURLRequestReloadIgnoringCacheData timeoutInterval:30.0]];
    
    

    二. WKWebView清除缓存

    • ios8 问世之后, 本作者立马想换掉老的UIWebView, WKWebView的好处这里就不介绍了. 由于项目已成型了且诸多JS交互, 与web人员沟通了一阵, 终于同意使用新控件.

    • 上面的(1) NSURLCache 和 NSHTTPCookieStorage 对象的清除方式对WKWebView没起到作用. 采用方式NSURLRequest对象的不缓存机制:NSURLRequestReloadIgnoringCacheData

    [self.web_view loadRequest:[NSURLRequest requestWithURL:_url cachePolicy:NSURLRequestReloadIgnoringCacheData timeoutInterval:30.0]];
    

    相关文章

      网友评论

        本文标题:WKWebView清除缓存

        本文链接:https://www.haomeiwen.com/subject/erbayftx.html