【发布时间】:2013-10-07 02:39:00
【问题描述】:
我必须为 i iphone 开发一个应用程序,它可以以两种方式工作,一种是在线,另一种是离线。当有互联网时,它应该显示来自网络的数据,但当没有网络时,它需要显示缓存的数据.我正在使用 nsurl 连接从服务器获取数据。我的代码如下
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:strUrl]
cachePolicy:NSURLRequestUseProtocolCachePolicy
timeoutInterval:60.0];
NSURLConnection *conn = [NSURLConnection connectionWithRequest:request
delegate:self];
[conn start];
还有没有被调用的委托
-(NSCachedURLResponse *)connection:(NSURLConnection *)connection willCacheResponse:
(NSCachedURLResponse *)cachedResponse
{
return cachedResponse;
}
谁能指导我如何在ios的NSURLConnection中获取存储在缓存中的数据。提前谢谢。:)
【问题讨论】:
-
stackoverflow.com/questions/16454719/… 这是一个类似的问题
-
我认为回答你的问题已经足够清楚了:)
-
@HubertWang 我认为这与缓存无关,而与 NSURLConnection 的工作原理有关..
-
nsurlconnection 会一点一点地获取数据,然后您管理一个 NSData 对象来接收数据。可以看到connectionDidFinishLoading,数据完成并存储到指定的路径。
-
但是数据存储在缓存中我只需要访问它..@HubertWang
标签: iphone ios caching nsurlconnection