如何确保 NSUrlSession 不获取缓存页面?
How to make sure NSUrlSession does not fetch cached pages?
我正在使用 NSUrlSession
下载 HTML 页面的内容(这样我就可以解析它,这违背了我的意愿)。我的问题是 iOS 似乎在缓存我的应用程序页面,因此即使我在服务器上更新此页面,我的应用程序仍会看到旧版本(这种情况一直存在,直到我删除并重新安装该应用程序)。
如何让 NSUrlSession 始终下载新副本?
编辑:没那么复杂,只需更改一下:
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url]
对此:
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url
cachePolicy:NSURLRequestReloadIgnoringLocalAndRemoteCacheData
timeoutInterval:0];
尝试将 NSURLSessionConfiguration
的 requestCachePolicy
设置为 NSURLRequestReloadIgnoringLocalCacheData
。
NSURLSessionConfiguration *configuration = [NSURLSessionConfiguration defaultSessionConfiguration];
configuration.requestCachePolicy = NSURLRequestReloadIgnoringLocalCacheData;
NSURLSession *session = [NSURLSession sessionWithConfiguration:configuration];
我正在使用 NSUrlSession
下载 HTML 页面的内容(这样我就可以解析它,这违背了我的意愿)。我的问题是 iOS 似乎在缓存我的应用程序页面,因此即使我在服务器上更新此页面,我的应用程序仍会看到旧版本(这种情况一直存在,直到我删除并重新安装该应用程序)。
如何让 NSUrlSession 始终下载新副本?
编辑:没那么复杂,只需更改一下:
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url]
对此:
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url
cachePolicy:NSURLRequestReloadIgnoringLocalAndRemoteCacheData
timeoutInterval:0];
尝试将 NSURLSessionConfiguration
的 requestCachePolicy
设置为 NSURLRequestReloadIgnoringLocalCacheData
。
NSURLSessionConfiguration *configuration = [NSURLSessionConfiguration defaultSessionConfiguration];
configuration.requestCachePolicy = NSURLRequestReloadIgnoringLocalCacheData;
NSURLSession *session = [NSURLSession sessionWithConfiguration:configuration];