NSURLCache一些缓存策略值
2016-06-13 15:47
281 查看
客户端使用NSURLCache配合AFNetworking进行网络请求。 NSURLCache有以下一些缓存策略值,在NSMutableURLRequest的cachePolicy可以进行设置。
客户端的实现有以下几个要点:
在请求回调的block中加入对Etag值进行固化操作,使用NSKeyedArchiver的形式保存到本地文件,以请求的url后缀作为key
AFHTTPClient继承自AFHTTPRequestOperationManager,需要重写HTTPRequestOperationWithRequest方法, 根据网络情况设置合适的缓存策略,即在有网络时通过Etag检查缓存一致性,无网络时直接使用缓存
在AppDelegate中需要对NSURLCache进行初始化,固化后的缓存文件会放在(App Sandbox)/Library/Caches/(your bundle identifier)/NSURLCache中,以SQLite数据库文件的形式存放
在Etag检查一致的情况下,服务端会返回304,此时需要在FailBlock中调用cachedResponseObject方法,取出本地缓存数据
客户端的实现有以下几个要点:
在请求回调的block中加入对Etag值进行固化操作,使用NSKeyedArchiver的形式保存到本地文件,以请求的url后缀作为key
AFHTTPClient继承自AFHTTPRequestOperationManager,需要重写HTTPRequestOperationWithRequest方法, 根据网络情况设置合适的缓存策略,即在有网络时通过Etag检查缓存一致性,无网络时直接使用缓存
在AppDelegate中需要对NSURLCache进行初始化,固化后的缓存文件会放在(App Sandbox)/Library/Caches/(your bundle identifier)/NSURLCache中,以SQLite数据库文件的形式存放
在Etag检查一致的情况下,服务端会返回304,此时需要在FailBlock中调用cachedResponseObject方法,取出本地缓存数据
相关文章推荐
- listener does not currently know of SID given in connect descriptor
- Android:ReactNative环境搭建遇到的坑
- android 模拟航拍遥控
- 如何通过Xmanager实现远程终端连接
- 怎么把图片文件转换成PDF文件
- 选美比赛
- 关于wmare虚拟机作为php服务器,主机无法ping通虚拟机,以及显示Fullcalendar日历
- 软件开发环境-开发环境、测试环境、生产环境的区别
- 路由器接口配置与管理——1
- 通过netstat+rmsock查找AIX端口对应进程
- PowerDesigner之导入sql文件 生成数据库物理模型
- Tcpdump命令行 与 GUI Wireshark
- 你知道为什么下载的HTML5模版打开非常缓慢?
- opencv(c++)学习笔记1
- 谷歌tensorflow基本概念
- Hbase: IllegalArgumentException: No columns to insert
- ios的状态栏(UIStatusBar)
- 结合源代码分析一个完整的中断过程
- Android百度地图应用之创建显示地图
- BootStrap智能表单实战系列(十一)级联下拉的支持