美文网首页
iOS UIWebView清除缓存

iOS UIWebView清除缓存

作者: ME进哥哥 | 来源:发表于2018-04-13 17:37 被阅读0次

iOS  UIWebView清除缓存,解决H5页面不能刷新数据

最近在做一个项目,用户在个人中心修改了个人信息之后,回到H5页面,重新加载H5页面,H5页面的用户信息并没有刷新,要退出APP之后,再点击进入H5页面,数据才会刷新。后面才发现UIWebView自带缓存。后面查找相关资料,说用这种加载方式可以解决:

NSURLRequest  *request = [NSURLRequest requestWithURL:url cachePolicy:NSURLRequestReloadIgnoringLocalCacheData timeoutInterval:5.0];

然后满怀期待的Command + R,修改用户信息,打开H5页面,尼玛,并没有什么卵用。

后面找到了下面这种方法,完美解决。在H5页面即将消失的时候,清除缓存和Cookie

- (void)viewWillDisappear:(BOOL)animated

{

    [super viewWillDisappear:animated];

    [self cleanCacheAndCookie];

}

/**清除缓存和cookie*/

- (void)cleanCacheAndCookie

{

    //清除cookies

    NSHTTPCookie *cookie;

    NSHTTPCookieStorage *CookieStorage = [NSHTTPCookieStorage sharedHTTPCookieStorage];

    for(cookie in [CookieStorage cookies]){

        [CookieStorage deleteCookie:cookie];

    }

    //清除UIWebView的缓存

    [[NSURLCache sharedURLCache] removeAllCachedResponses];

    NSURLCache * cache = [NSURLCache sharedURLCache];

    [cache removeAllCachedResponses];

    [cache setDiskCapacity:0];

    [cache setMemoryCapacity:0];

}

相关文章

网友评论

      本文标题:iOS UIWebView清除缓存

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