我有一个带有WebView的iOS应用程序。但是当我在我的网站上更改某些内容时,它通常不会在WebView中发生变化。我认为这是因为缓存。我该如何设置缓存首选项?应启用缓存,但应始终存在实际内容。我怎么解决这个问题?在开始/结束时清除缓存?经过一段特殊时间(例如5分钟)。有人对我有建议吗? 谢谢, 大卫。
这是我在ViewController.m中的代码:
#import "ViewController.h"
@implementation ViewController
-(IBAction)refresh:(id)sender; {
NSURL *url=[NSURL URLWithString: @"http://mywebsite.com"]; NSURLRequest * requestURL=[NSURLRequest requestWithURL:url]; [_site loadRequest:requestURL];
}
答案 0 :(得分:0)
要禁用缓存:
#import "ViewController.h"
@implementation ViewController
-(IBAction)refresh:(id)sender; {
NSURL *url=[NSURL URLWithString: @"http://mywebsite.com"];
NSURLRequest * requestURL=[NSURLRequest requestWithURL:url cachePolicy:NSURLRequestReloadIgnoringCacheData timeoutInterval:30.0];
[_site loadRequest:requestURL];
}
如果您只想在没有修改时使用缓存,则需要在请求中添加If-Modified-Since
标头。这很好地解释了here。