繁体   English   中英

我可以强制NSURLConnection从缓存加载吗?

[英]Can I force NSURLConnection to load from cache?

我曾考虑过编写自定义URL缓存,但似乎NSURLCache应该支持磁盘缓存。 我希望我的iphone应用程序使用缓存的响应,而不会直到资源变得陈旧(由我从服务器发回的标头确定)。

我是否必须使用NSURLConnection打电话? 如何让iphone使用网址的缓存版本?

更新 :这是我的代码的链接

http://pastie.org/808549

我想你可能需要在你的NSURLRequest中添加一个“cachePolicy”:

NSURLRequestReturnCacheDataElseLoad缓存策略将导致URL加载系统使用缓存数据,忽略其年龄或到期日期(如果存在),并且仅在没有缓存版本时才从原始源加载数据。

http://developer.apple.com/mac/library/DOCUMENTATION/Cocoa/Conceptual/URLLoadingSystem/Concepts/CachePolicies.html#//apple_ref/doc/uid/20001843

那里有一些不同的政策。 也许其中一个会有所帮助。

不幸的是,答案是iPhone无法使用NSURLCache进行磁盘缓存,这使得它不适合我概述的场景。

我正在自己上课。

如果您在请求中使用etags,则使用@typeoneerror描述的策略进行缓存似乎可以正常工作。

当你在这里时,看看ASI课程。

http://allseeing-i.com/ASIHTTPRequest/

他们非常好。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM