ASIHTTPRequest-断点续传的下载
从0.94版本开始,ASIHTTPRequest可以恢复中断的下载
- (IBAction)resumeInterruptedDownload:(id)sender//恢复中断的下载的方法。
{
NSURL *url = [NSURL URLWithString:
@"http://www.dreamingwish.com/wp-content/uploads/2011/10/asihttprequest-auth.png"];
ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];
NSString *downloadPath = @"/Users/zhangmingwei/Desktop/asi.png";//设置下载的路径。
//当request完成时,整个文件会被移动到这里
[request setDownloadDestinationPath:downloadPath];//下载的目的地。
//这个文件已经被下载了一部分
[request setTemporaryFileDownloadPath:@"/Users/zhangmingwei/Desktop/asi.png.download"];
[request setAllowResumeForFileDownloads:YES];
[request startSynchronous];//同步请求。
//整个文件将会在这里
NSString *theContent = [NSString stringWithContentsOfFile:downloadPath];
}
这个特性只对下载数据到文件中有效,你必须为一下情况的request设置allowResumeForFileDownloads 为YES:
• 任何你希望将来可以断点续传的下载(否则,ASIHTTPRequest会在取消或者释放内存时将临时文件删除)
• 任何你要进行断点续传的下载
另外,你必须自己设置一个临时下载路径(setTemporaryFileDownloadPath),这个路径是未完成的数据的路径。新的数据将会被添加到这个文件,当下载完成时,这个文件将被移动到downloadDestinationPath 。
断点续传的工作原理是读取temporaryFileDownloadPath的文件的大小,并使用Range: bytes=x HTTP头来请求剩余的文件内容。
ASIHTTPRequest并不检测是否存在Accept-Ranges头(因为额外的HEAD头请求会消耗额外的资源),所以只有确定服务器支持断点续传下载时,再使用这个特性。
- 浏览: 1366563 次
- 性别:
- 来自: 开封
最新评论
-
用户6006038975:
macd2666 写道录制出来的语音声音好轻啊。你好,这个编译 ...
ios音频录制和播放,文件很小。压缩效果不错 -
用户6006038975:
macd2666 写道录制出来的语音声音好轻啊。
ios音频录制和播放,文件很小。压缩效果不错 -
用户6006038975:
linker command failed with exit ...
ios音频录制和播放,文件很小。压缩效果不错 -
mapboo:
http://www.codertopic.com/?page ...
史上最全的iOS面试题及答案 -
macd2666:
录制出来的语音声音好轻啊。
ios音频录制和播放,文件很小。压缩效果不错
相关推荐
在这个特定的主题中,我们关注的是"ASIHTTPRequest实现资源的下载,断点续传"。断点续传是一项重要的下载技术,尤其在处理大文件或网络不稳定时,它允许用户暂停下载并在稍后继续,而无需重新开始。 首先,了解断点...
本示例项目"ios 断点续传下载例子"是基于ASIHTTPRequest库实现的,这是一个已不再维护但依然被广泛使用的第三方网络请求库,因其丰富的功能和良好的兼容性而受到开发者喜爱。 首先,理解断点续传下载的基本原理:当...
总的来说,“DownAndASIRequest”项目是一个很好的学习资源,它演示了如何利用ASIHttpRequest库在iOS应用中实现下载和断点续传功能。不过,需要注意的是,ASIHttpRequest库虽然强大,但已经停止更新,对于较新的iOS...
使用ASIHTTPRequest进行断点续传下载,需要设置请求头中的`If-Range`和`Range`字段,以指定从哪个位置开始下载。 总结,iOS应用在进行文件下载时,使用多线程异步下载可以提升用户体验,结合断点续传技术,即使在...
1.基于ASIHttpRequest的断点续传功能,进一步封装,自定义了下载队列,包括下载中、已完成队列,并且用CoreData对其持久化封装,使用简单,资源url作为标示,传入网络资源url和本地path即可。 2.队列使用字典进行...
7. **断点续传**:支持大文件下载的断点续传功能。 三、使用方法 1. **初始化请求**:创建ASIHTTPRequest对象,设置URL,如`ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];` 2. **设置请求类型...
本项目是基于ASIHttpRequest的封装,特别针对iOS应用中的文件下载,尤其是实现了断点续传功能,并采用单例模式进行设计。以下是关于这个项目的关键知识点的详细说明: 1. **ASIHttpRequest**:ASIHttpRequest是Sam ...
在“ASI的进度追踪和断点续传-NonARC”项目中,开发者可以学习如何在没有ARC的情况下实现ASIHttpRequest的进度追踪和断点续传功能。这包括设置请求的回调函数以监控进度,保存和恢复下载状态,以及正确处理内存管理...
- ASIHTTPRequest 支持断点续传,这在下载大文件时非常有用,通过 `-[ASIHTTPRequest setShouldResumeDownloadFromData:]`。 9. **身份验证**: - 提供了对 HTTP 基本认证和 Digest 认证的支持,如 `-...
8. **断点续传**:对于大文件下载,ASIHTTPRequest支持断点续传,即在中断后能从上次停止的地方继续下载。 9. **错误处理**:当请求失败时,会返回一个错误对象,包含了错误代码和描述,方便调试。 10. **自定义...
在ASIHTTPRequest中,可以通过setShouldResumeDownloads:YES来开启断点续载功能,并配合使用requestDidResume和requestDidStopNotification通知来监控下载状态。 在UITableView中,我们可以为每个下载任务创建一个...
7. **断点续传**:对于大文件的下载,ASIHttpRequest支持断点续传,即使在下载过程中应用程序被关闭或设备重启,也能从上次中断的地方继续下载。 8. **请求队列管理**:可以将多个请求放入队列,按照顺序或并行执行...
5. **断点续传**:对于大文件下载,ASIHTTPRequest支持断点续传功能,即使下载中断,下次也能从上次断点处继续下载。 6. **请求状态监控**:提供了丰富的请求状态回调,如开始、结束、错误等,方便开发者跟踪请求...
如果请求是下载操作,ASIHTTPRequest支持断点续传。通过保存和恢复请求的状态,可以在应用程序下次启动时从上次中断的地方继续下载。 7. **自动处理cookies**: ASIHTTPRequest会自动处理服务器返回的cookies,...
10. **断点续传**:对于大文件下载,ASIHTTPRequest支持断点续传,即暂停下载后可以从上次停止的地方继续。 关于导入ASIHTTPRequest到项目中的步骤: 1. 下载最新版本的ASIHTTPRequest库,通常是一个.zip文件。 2....
为了实现断点续传,ASIHttpRequest提供`shouldResumeDownload`属性,当该属性设置为YES时,ASIHttpRequest会检查本地是否存在部分下载的文件,并尝试从中恢复下载。同时,你可以通过`downloadDestinationPath`设置...
对于大文件下载,ASIHTTPRequest 支持断点续传功能。当下载中断后,可以从上次停止的地方继续下载,避免了重复下载。通过设置 `shouldResumeFromPartialDownload` 为 `YES`,可以启用此功能: ```objc ...