我已经使用了NSURLRequestReturnCacheDataElseLoad,但它不起作用,即每次我收到的数据不同时,它总是从服务器加载数据。
我想知道:
即使使用NSURLRequestReturnCacheDataElseLoad策略,它也会服从服务器响应的缓存控制头,而不管文档是否忽略过期日期?
[NSURLCache sharedURLCache]
的存储政策是什么?如果它只在内存中,那么下次启动应用程序时它不会在磁盘上有缓存吗?
我发现这非常有趣:
NSURLRequestReturnCacheDataElseLoad not loading from cache on first request?
说
似乎只有在网址中有查询时才会出现此问题。
这是确定的问题吗?
由于
答案 0 :(得分:0)
这个主题已经差不多5年了,但我最近才遇到同样的问题。就我而言,我使用的是NSURLSessionDownloadTask,根据Can I use HTTP caching with an NSURLSessionDownloadTask on iOS?,无论使用哪种缓存策略,都不使用缓存。我将代码切换为使用NSURLSessionDataTask,NSURLRequestReturnCacheDataElseLoad策略按预期工作。