`

UIWebView3——离线缓存

    博客分类:
  • ios
阅读更多

NSURLCache

NSURLProtocol

 

NSURLRequestCachePolicy  指定缓存逻辑。URL加载系统提供了一个磁盘和内存混合的缓存,来相应网络请求。这个缓存允许一个应用减少对网络连接的依赖,并且增加性能。


   NSURLRequestUseProtocolCachePolicy = 0, 默认缓存策略。具体工作:如果一个NSCachedURLResponse对于请求并不存在,数据将会从源端获取。如果请求拥有一个缓存的响应,那么URL加载系统会检查这个响应来决定,如果它指定内容必须重新生效的话。假如内容必须重新生效,将建立一个连向源端的连接来查看内容是否发生变化。假如内容没有变化,那么响应就从本地缓存返回数据。如果内容变化了,那么数据将从源端获取

   NSURLRequestReloadIgnoringLocalCacheData = 1, URL应该加载源端数据,不使用本地缓存数据     

   NSURLRequestReloadIgnoringLocalAndRemoteCacheData =4, 本地缓存数据、代理和其他中介都要忽视他们的缓存,直接加载源数据

   NSURLRequestReloadIgnoringCacheData = NSURLRequestReloadIgnoringLocalCacheData, 两个的设置相同

   NSURLRequestReturnCacheDataElseLoad = 2,   指定已存的缓存数据应该用来响应请求,不管它的生命时长和过期时间。如果在缓存中没有已存数据来响应请求的话,数据从源端加载。

   NSURLRequestReturnCacheDataDontLoad = 3, 指定已存的缓存数据用来满足请求,不管生命时长和过期时间。如果在缓存中没有已存数据来响应URL加载请求的话,不去尝试从源段加载数据,此时认为加载请求失败。这个常量指定了一个类似于离线模式的行为

   NSURLRequestReloadRevalidatingCacheData = 5 指定如果已存的缓存数据被提供它的源段确认为有效则允许使用缓存数据响应请求,否则从源段加载数据。


只有响应http和https的请求会被缓存。ftp和文件协议当被缓存策略允许的时候尝试接入源段。自定义的NSURLProtocol类能够保护缓存,如果它们被选择使用的话。



http://blog.sina.com.cn/s/blog_717fba110101dr8p.html

分享到:
评论

相关推荐

    ios-基于NSURLSession NSURLProtol的UIWebView离线缓存.zip

    基于NSURLSession NSURLProtol的UIWebView离线缓存 主要是使用苹果的黑魔法类:NSURLProtocol来对网络请求进行拦截,拦截后使用自定义的网络去加载数据后进行离线缓存。这样保证在没有网络的情况下,也能保证离线能...

    UIWebView应用——自己动手写IOS浏览器

    NULL 博文链接:https://zyqwst.iteye.com/blog/2201996

    UIWebView离线缓存

    代码测试了一台ipad2(IOS 5.1),一台5s(IOS 7.0.4)都可以正常缓存.

    UIWebView缓存网页

    利用UIWebView下载缓存网页,离线情况下也可以看之前下载过的网页

    [转] 为UIWebView实现离线浏览

    NULL 博文链接:https://re-reference.iteye.com/blog/1391408

    iOS开发中UIWebView的加载本地数据的三种方式

    UIWebView是IOS内置的浏览器,可以浏览网页,打开文档 html/htm pdf docx txt等格式的文件。 safari浏览器就是通过UIWebView做的。 ...3加载NSURLRequest文件(前两步与NSURLConnect相同) 以上所

    浅谈iOS UIWebView对H5的缓存功能

    本篇文章主要介绍了浅谈iOS UIWebView对H5的缓存功能,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

    UIWebView 离线浏览(iPhone源代码)

     实现 UIWebView 的离线浏览(缓存)功能。 作者说: 原理:将get请求的数据缓存在本地cache目录中,以后访问的时候直接从cache中获取数据。 备注:在初始化缓存的时候可以指定缓存的有效期时间长度,具体参看...

    IOS 离线浏览网页

    通过网页浏览时,讲缓存保存起来,若下次离线浏览该网页,则显示之前保存的数据;...本代码在http://code4app.com/ios/UIWebView离线缓存/53c39db6933bf07c388b49c8 的基础上面做小修改,希望能对大家有用

    iOS-UIWebview缓存并保证实时性

    iOS-UIWebview缓存并保证实时性 详细解释:http://blog.csdn.net/u014220518/article/details/72380291 欢迎关注!

    ios-基于NSURLSession和NSURLProtocol的webView缓存.zip

    基于NSURLSession NSURLProtol的UIWebView离线缓存 主要是使用苹果的黑魔法类:NSURLProtocol来对网络请求进行拦截,拦截后使用自定义的网络去加载数据后进行离线缓存。这样保证在没有网络的情况下,也能保证离线能...

    iOS UIWebView的缓存

    实现UIWebView缓存图片还有文字,在无网的条件下依然可以加载,实现在无网的条件下从本地加载

    UIWebview使用缓存并且保证实时性

    UIWebview中提供的缓存策略 NSURLRequestUseProtocolCachePolicy 缓存策略定义在 web 协议实现中,用于请求特定的URL。是默认的URL缓存策略。 NSURLRequestReloadIgnoringLocalCacheData 从服务端获取数据,忽略...

    UIWebView的使用代码

    之前提到UIWebView使用一个UIScrollView对象来关联web页面的内容,通过UIWebView的scrollView属性即可获得该对象,默认情况下网页长度超出设备视口长度后页面会滚动,用户使用手指滚动页面到页面边距并放开手指后...

    Cocos2dx中UIWebView替换为WKWebView

    IOS开发中因为引入cocos2dx,导致代码审核不通过无法提交( Apple will stop accepting submissions of apps that use UIWebView APIs )。该问题的解决方案有两种:1)升级Cocos2dx的版本,在查看Cocoas官网及Cocoas...

    RNCachingURLProtocol, 用于UIWebView和其他NSURLConnection客户端的简单脱机缓存.zip

    RNCachingURLProtocol, 用于UIWebView和其他NSURLConnection客户端的简单脱机缓存 背景RNCachingURLProtocol是HTTP协议( 这并不像听起来那么可怕)的简单垫片。... 如果我们离线,那么我们检索缓存的版本。RNCach

    UIWebView+html+css

    UIWebView+html+css,实现UIWebView中可点击链接,并且可显示gif动画效果

    UIWebView和js交互

    UIWebView和js交互 里边自己写了个H5方便大家理解

Global site tag (gtag.js) - Google Analytics