ASIHTTPRequest 是一款强大的网络请求框架,该框架自带了数据的缓存策略,下面来介绍该功能的使用方法。
1.创建缓存对象
//创建缓存对象 ASIDownloadCache *asiCache = [[ASIDownloadCache alloc] init]; //设置缓存目录,这里设置沙盒目录下的Documents目录作为缓存目录 NSString *document = [NSHomeDirectory() stringByAppendingPathComponent:@"Documents"]; [asiCache setStoragePath:document]; //设置缓存策略 [asiCache setDefaultCachePolicy:ASIOnlyLoadIfNotCachedCachePolicy];
2.请求对象设置缓存
//创建数据请求对象 ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:[NSURL URLWithString:urlstring]]; /* *设置缓存策略 *ASICacheForSessionDurationCacheStoragePolicy 程序下次启动会清除本地的缓存数据 *ASICachePermanentlyCacheStoragePolicy 是持久缓存,程序下次启动,缓存仍然还在 */ request.cacheStoragePolicy = ASICachePermanentlyCacheStoragePolicy; [request setDownloadCache:[UserContext shareInstance].cache]; //开始异步请求网络 [request startAsynchronous];
3.数据请求完成后
//网络数据加载完成后调用的block [request setCompletionBlock:^{ NSString *responseString = request.responseString; //打印返回的数据 NSLog(@"%@",responseString); //判断返回的数据是否来自本地缓存 if (request.didUseCachedResponse) { NSLog(@"使用缓存数据"); } else { NSLog(@"请求网络数据"); } }];
发表评论
-
如何使用AV Foundation从摄像头将视频帧捕获为图像
2012-11-15 17:21 7460如果译错,感谢指出。 英文原文地址:https://d ... -
iOS单元测试
2012-11-05 11:37 920转自:http://www.cnblogs.com/ke ... -
Core Data数据持久化的使用
2012-10-30 21:31 1050CoreData 是ios中用来对数据做持久化的一个框架 ... -
【无限互联】xcode自定义类的模板
2012-10-23 19:37 1161翻译:http://www.bobmccune.com/ ... -
【无限互联】适配iOS6和iPhone5屏幕
2012-10-23 18:05 24771. iOS6的mo模拟器比较大,通过comman ... -
【无限互联】mac下配置svn服务器
2012-10-22 13:30 773在mac下配置svn服务器其实很简单,只需要简单的几句命令就可 ... -
【无限互联】iOS开发之多线程开发
2012-10-10 17:41 1237本节要点: 1.多线程的概念 2.掌握iOS中多线程 ... -
【无限互联】iOS开发block用法之UIAlertView控件的修改
2012-10-10 17:06 2689原始的UIAlertView的需要通过委托方法来实现按钮 ... -
Objective-C新特性
2012-09-05 14:38 707基于Xcode4.4(不完全独有)。1. 成员方法无需前置声明 ... -
iphone-NSDate日期处理
2012-08-31 16:25 1070NSDate存储的是世界标准时(UTC),输出时需要 ... -
iphone开发资源汇总
2012-08-31 16:16 1623如何用Facebook graphic api上传视 ... -
iOS-如何让xcode自动检查内存泄露
2012-08-31 16:05 1097在project-setting中找到 “Run Static ... -
UIScrollView的属性总结
2012-02-08 15:58 4434在滚动过程当中,其实是在修改原点坐标 当手指触摸后, scr ... -
iPhone开发之 ARC是什么
2012-01-17 16:58 1384相关链接:http://blog.csdn ... -
画图时 自己做的一小笔记
2012-01-07 21:02 9650 CGContextRef context = UIGra ... -
让Xcode 4.2生成的app支持旧版iOS设备(armv6)
2012-01-07 00:46 1339这几天遇到一个非常奇怪的问题,基于Xcode 4.2开发的ap ... -
5个开源库的JSON解析速度测试
2011-12-03 23:15 1460iOS5新增了JSON解析的API ... -
获取iOS设备当前ip地址
2011-11-17 23:16 1394第一种方法是用系统api的方式获取,如下 #include & ... -
Quartz 2D编程指南(2) - 图形上下文(Graphics Contexts)
2011-11-12 00:08 1456一个Graphics Context表示一 ... -
Quartz 2D编程指南(1) - 概览
2011-11-11 23:57 1720Quartz 2D是一个二维图形绘制引擎,支持iOS环境和Ma ...
相关推荐
- 库内置了缓存功能,你可以设置缓存策略,如 `-[ASIHTTPRequest setShouldUseCredentialStorage:]` 和 `-[ASIHTTPRequest setCachePolicy:]`。 5. **进度反馈**: - 可以监听请求的上传和下载进度,如 `-...
- **设置缓存策略**:可以通过设置`shouldUseCache`属性来决定是否启用缓存,还可以通过`cachePolicy`属性来调整缓存策略。 - **接收响应**:当图片下载完成后,ASIHTTPRequest会触发相应的代理方法,开发者可以在...
10. **请求失败重试机制**:可设置重试策略,当请求失败时自动重试。 二、集成ASIHTTPRequest到Xcode项目: 1. **下载资源包**:首先从GitHub或其他源获取ASIHTTPRequest的源代码压缩包。 2. **解压文件**:将...
4. **请求缓存**:支持本地缓存策略,当网络不畅时,可以从本地缓存读取数据,提高了应用的响应速度和用户体验。 5. **上传和下载进度**:可以监听上传和下载的进度,更新UI,显示进度条或者百分比,让用户了解操作...
它支持异步和同步请求,可以处理文件上传和下载,同时具备进度跟踪、缓存策略、自定义头信息等功能。 1. **异步与同步请求**:ASIHTTPRequest提供了异步请求的能力,允许应用程序在等待服务器响应的同时执行其他...
3. **缓存**:ASIHTTPRequest支持HTTP缓存策略,可以自动或手动将响应数据存储在本地,以提高性能并减少网络使用。 4. **请求状态监控**:通过代理方法和Block,开发者可以轻松地跟踪请求的状态,如开始、完成、...
4. **ASIDownloadCache**:缓存类,允许ASIHTTPRequest缓存服务器响应,提高加载速度。 三、ASIHTTPRequest 支持类介绍 1. **ASIInputStream**:在上传数据时使用,是ASIHTTPRequest的重要辅助类。 2. **...
3. 缓存:自动处理HTTP缓存策略,可以自定义缓存策略和缓存路径。 4. 请求取消:允许在请求过程中随时取消,资源得以释放。 5. 进度反馈:通过 `-setDownloadProgressDelegate:` 可以设置进度代理,实时获取下载或...
- ASIHttpRequest支持HTTP缓存,通过`-[ASIHTTPRequest setCachePolicy:]`设置缓存策略,如始终使用缓存、从不使用缓存等。 7. **超时和取消请求**: - `-[ASIHTTPRequest setTimeOutSeconds:]`设置请求超时时间...
7. 缓存策略:ASIHTTPRequest 提供了缓存策略,可以将响应数据存储在本地,减少网络延迟,提高加载速度。 8. SSL 支持:对于需要 HTTPS 的安全连接,ASIHTTPRequest 也提供了一套完整的解决方案。 在“pokeb-asi-...
开发者可以通过设置缓存策略来控制何时使用缓存以及如何更新缓存。 此外,ASIHttpRequest还支持自定义头信息,这在处理特定服务器接口时非常有用。比如,你可以设置Content-Type头来指定数据格式(如JSON或XML),...
4. **缓存策略**:ASIHttpRequest可以配置不同的缓存策略,如基于时间的过期策略,或者根据服务器返回的HTTP头决定是否使用缓存。 5. **进度反馈**:通过代理方法或KVO(Key-Value Observing),开发者可以获取请求...
ASIHTTPRequest支持基于URL的HTTP响应缓存,可以自定义缓存策略以优化性能。 9. **集成到项目** 将ASIHttpRequest集成到Xcode项目中,可以通过CocoaPods或者手动导入源代码。如果使用CocoaPods,只需在Podfile中...
3. **缓存策略**:ASIHttpRequest支持自定义的缓存策略,可以将服务器响应缓存在本地,减少不必要的网络请求,提高应用性能。 4. **请求队列管理**:通过ASIRequestQueue,开发者可以方便地管理多个请求,设置请求...
5. **缓存策略**:可以设置请求的缓存策略,如只读缓存、缓存并验证等,提高应用性能。 ```objective-c [request setShouldCacheResponse:YES]; ``` 6. **请求回调**:提供了一系列的代理方法,如...