关闭

asihttprequest简单异步

746人阅读 评论(0) 收藏 举报

调试环境:
ASIHTTPRequest版本1.8.1-61 2011-9-19修复版
Xcode版本4.2.1
iOS5.0
Mac OS X10.7.1

在此代码仅仅捣鼓异步的初步处理
1、需要实现协议接口

ASIHTTPRequestDelegate


主要requestFailed,requestFinished之类的接口

2、调用的时候,建议启动异步request的对象和异步处理的对象分开定义

下面我的代码是启动异步和异步处理定义在一起

代码:

@interface AsynBaseDeal : NSObject<ASIHTTPRequestDelegate>

- (void)LoadImage:(NSString *)strUrl;

@end

 

@implementation AsynBaseDeal

- (id)init
{
    self = [super init];
    if (self)
    {
    }
    
    return self;
}

- (void)dealloc
{        
    [super dealloc];
}

- (void)LoadImage:(NSString *)strUrl
{
    if (strUrl)
    {
        ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:[NSURL URLWithString:strUrl]];
        
        [request setDelegate:self];
        [request startAsynchronous];
    }
}

- (void)requestFailed:(ASIHTTPRequest *)request
{
    NSLog(@"error :%@" ,[request error]);
}

- (void)requestFinished:(ASIHTTPRequest *)request
{
    NSLog(@"finish :%@ ,%d" ,[request responseData] ,request.responseEncoding);
}
@end


在使用中,我把AsynBaseDeal对象定义为UIApplication层面的成员变量来用的,这样避免了在异步处理结束前就释放了对应的处理对象

from:http://www.cnblogs.com/gogoagg/archive/2011/12/22/2298196.html

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:1705030次
    • 积分:15611
    • 等级:
    • 排名:第685名
    • 原创:209篇
    • 转载:274篇
    • 译文:0篇
    • 评论:257条