一、在项目中使用 ASIHTTPRequest
1、拷贝源文件到项目中
ASIHTTPRequest 是一个开源项目,要使用他,直接拷贝项目源文件到你的项目
中,包括下列文件(即 Classes 下所有文件和 External/Reachability 下所有文
件):
ASIHTTPRequestConfig.h
ASIHTTPRequestDelegate.h
ASIProgressDelegate.h
ASICacheDelegate.h
ASIHTTPRequest.h
ASIHTTPRequest.m
ASIDataCompressor.h
ASIDataCompressor.m
ASIDataDecompressor.h
ASIDataDecompressor.m
ASIFormDataRequest.h
ASIInputStream.h
ASIInputStream.m
ASIFormDataRequest.m
ASINetworkQueue.h
ASINetworkQueue.m
ASIDownloadCache.h
ASIDownloadCache.m
对于 iPhone,还要拷贝下列文件:
ASIAuthenticationDialog.h
ASIAuthenticationDialog.m
Reachability.h (External/Reachability 目录 )
Reachability.m (External/Reachability 目录 )
2、添加依赖库
ASIHTTPRequest 依赖于以下 5 个框架或库:
CFNetwork, SystemConfiguration, MobileCoreServices, CoreGraphics 和
libz1.2.3。
依次将上述库和框架添加到 target 的 Linked Libraries 中
然后下载核心代码:
//下载
-(void)downLoad:(id)sender
{
//创建请求对象
NSURL *url=[NSURL URLWithString:@"http://12345.com"];//加自己的地址
ASIHTTPRequest *request=[ASIHTTPRequest requestWithURL:url];
//设置文件保存路径
NSString *cachePath=[NSSearchPathForDirectoriesInDomains(NSDocumentationDirectory, NSUserDomainMask, YES)lastObject];
NSString *filename=[cachePath stringByAppendingString:@"travel.plist"];
request.downloadDestinationPath=filename;
NSLog(@"%@",filename);
//发送网络请求(异步)
[request startAsynchronous];
[request setCompletionBlock:^{
//成功下载提示
UIAlertView *alertView=[[UIAlertView alloc]initWithTitle:@"网络下载" message:@"下载完成" delegate:self cancelButtonTitle:@"取消" otherButtonTitles:@"确定", nil];
[alertView show];
}];
}
源码下载:链接:http://pan.baidu.com/s/1hq6fWu4 密码:z3xr