一、简单介绍
代码示例:
1 #import "YYViewController.h" 2 #import "ASIHTTPRequest.h" 3 4 @interface YYViewController () 5 6 7 @end 8 9 @implementation YYViewController 10 11 - (void)viewDidLoad 12 { 13 [super viewDidLoad]; 14 } 15 16 -(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event 17 { 18 //下载服务器上的文件 19 [self download]; 20 } 21 22 #pragma mark-下载文件 23 -(void)download 24 { //1.创建请求对象 25 NSURL *url=[NSURL URLWithString:@"http://127.0.0.1:8080/MJServer/resources/video.zip"]; 26 ASIHTTPRequest *request=[ASIHTTPRequest requestWithURL:url]; 27 28 //2.添加请求参数(请求体中的参数) 29 [request setDataReceivedBlock:^(NSData *data) { 30 NSLog(@"%d",data.length); 31 }]; 32 33 //3.异步发送网络请求 34 [request startAsynchronous]; 35 } 36 37 @end |
代码说明:上面的代码从服务器上异步下载文件,每当接收到数据的时候就打印接收到的数据的长度。
打印结果如下:
注意:在实际的开发中不能这样去下载文件,因为他不断的拼接文件数据的操作是在内存中进行的,如果所下载文件的数据较大,那么将会直接导致内存爆掉。