码迷,mamicode.com
首页 > Web开发 > 详细

开源类库之一 (ASIHTTPRequest)

时间:2015-01-31 12:53:11      阅读:139      评论:0      收藏:0      [点我收藏+]

标签:iphone开发   xcode   ios   ios开发   apple   

ASIHTTPRequest虽然很久没有更新了,但是他仍然是一个非常流行的iOS平台网络通信类库,使用ASIHTTPRequest之后,大大简化了iOS平台的网络编程。其以方便的接口对同步、异步的网络传输进行了传输,将ASIHTTPRequest添加到自己的项目也非常方便,将类库中所有文件拷贝到一个文件夹中,然后将此文件夹添加到项目中,同时要添加如下图CFNetWork之下所示的类库,就可以使用ASIHTTPRequest了:

技术分享


使用ASIHTTPRequest步骤非常简答,在一般应用开发中,网络连接基本上使用的都是异步方式,下面简单演示一下最简单的异步通讯方法


  1. #import "ASIHTTPRequest.h"  
  2.   
  3. - (void) requestDataFromServer  
  4. {  
  5.     NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];  
  6.     NSURL* url = [NSURL URLWithString: @"www.fakeurl.com"];  
  7.     ASIHTTPRequest* request = [ASIHTTPRequest requestWithURL: url];  
  8.     [request setTag: 1024];  
  9.     [request setTimeOutSeconds: 3];  
  10.     [request setAllowCompressedResponse:YES];  
  11.     [request setDelegate:self];  
  12.     [request startAsynchronous];  
  13.     [pool drain];  
  14. }  
  15.   
  16. - (void)requestFinished:(ASIHTTPRequest *)request  
  17. {  
  18.     NSString* rawString = [request responseString];  
  19.     if (request.tag == 1024) {  
  20.         //处理网络返回结果  
  21.      }   
  22. }  
  23.   
  24. - (void)requestFailed:(ASIHTTPRequest *)request  
  25. {  
  26.     if (request.tag == 1024) {  
  27.         //处理网络错误  
  28.      }   
  29. }   

注意上面的两个函数中,后面连个为ASIHTTPRequest的delegate函数,其声明类型不能改变,只要在生成ASIHTTPRequest时的deleage设成了self,那么最后返回结果,不管是成功调用还是网络失败,都会调用这两个函数中的对应的一个。

开源类库之一 (ASIHTTPRequest)

标签:iphone开发   xcode   ios   ios开发   apple   

原文地址:http://blog.csdn.net/hnjyzqq/article/details/43328261

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!