关闭

AFHTTPClient的异步回调模式

标签: 异步IOS AFHTTPClient
667人阅读 评论(0) 收藏 举报
分类:

以前第一个版本,ios的http都用的同步模式,在很多地方会导致线程阻塞,自己开发了一个简易的AFHTTPClient的异步回调模式。

 

回调的protocol:

@protocol MyAFNetworkingResponse <NSObject>

@required

-(void) MyHttpResponse:(NSString*)ret Type:(NSString*)strType returnData:(NSObject*)retData;

@end

 

AFHTTPClient的异步通信的实现类:

@interface MyAFNetworkingClient : AFHTTPClient

@property NSURL* mServerUrl;//http服务地址

@property id<MyAFNetworkingResponse> delegate;//这个最重要,回调的代理

 

//类初始化函数

- (id)init;

- (id)initWithBaseURL:(NSURL *)url;

 

/*然后是一堆实现的函数*/

.....

@end

 

然后viewcontroller中:

@interface MainViewController ()< MyAFNetworkingResponse>

@end

@implementation MainViewController

- (void)viewDidLoad {

    [super viewDidLoad];    

    //初始化

    self.mAFNetworkingHttpClient = [[MyAFNetworkingClient allocinit];

    self.mAFNetworkingHttpClient.delegate = self;

}

 

-(void) MyHttpResponse:(NSString*)ret Type:(NSString*)strType returnData:(NSObject*)retInfo{

    __weak MainViewController* wself = self;

    if ([strType isEqualToString:@"xxxx"]) {

         //某个具体http类型的,实现处理

    }else if([strType isEqualToString:@"xxxx"]){

          //某个具体http类型的,实现处理

    }

}

@end

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:30077次
    • 积分:456
    • 等级:
    • 排名:千里之外
    • 原创:15篇
    • 转载:6篇
    • 译文:0篇
    • 评论:8条
    文章分类
    最新评论