0
以下是使用ASIHTTPRequest从远程服务器下载和缓存图像的源代码。如果服务器未使用新图像更新,则使用图像的缓存副本。它在初始请求中缓存所有图像,并且工作正常。ASIDownloadCache未更新为新内容
根据下面的代码,它应该检查服务器是否每次都有新的内容可用。我检查了服务器日志,它正在打印304状态码。但是当我更新最新的图像时,它不会显示新图像。而不是它显示缓存的图像。但服务器日志表示它正在通过状态码200发送新图像。为了避免这种行为,我必须删除该应用程序并重新安装它。
ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];
request.timeOutSeconds = kDefaultTimeInterval;
request.validatesSecureCertificate = NO;
[request setDownloadCache:[ASIDownloadCache sharedCache]];
[request setCachePolicy:ASIAskServerIfModifiedCachePolicy];
[request setCacheStoragePolicy:ASICachePermanentlyCacheStoragePolicy];
[request setSecondsToCache:kSecondsToCache];
[request startSynchronous];
if (![request didUseCachedResponse]) {
NSLog(@" Cache miss. Loading resource %@", location);
} else {
NSLog(@" Cache hit!");
}
NSLog(@" *** image data size: %u bytes", [request.responseData length]);
return ([request error]) ? nil : request.responseData;
我在这里失踪了什么?