AFNetworking VS ASIHTTPRequest
AFNetworking和ASIHTTPRequest,大致如下:
使用上:AFN是用上较ASI略简单,但扩展不如ASI;AFN能按普通的block写法直接用闭包的写法,但是ASI不行,这样ASI的代码就比较松散;
效率:AFN基于NSURL,而NSURL是基于CFNetwork;ASI直接基于CFNetwork,所以ASI的效率较优,扩展性也就更好;CFNetwork包含几部分,都是基于CFSocket。所有网络通信的基础是Socket,一个Socket与另一个连接并传送数据。BSD Socket是一类最常见的Socket抽象接口。
由于ASIHTTPRequest已经不再维护,没有特殊需要使用AFNetworking;
详见:http://www.infoq.com/cn/articles/afn_vs_asi
AFNetWork的使用方法:
AFHTTPClient * client = [[AFHTTPClient alloc] initWithBaseURL:[NSURL URLWithString:@"http://www.baidu.com"]]; AFHTTPRequestOperation * operation = [client HTTPRequestOperationWithRequest:request success:^(AFHTTPRequestOperation *operation, id responseObject) { NSLog(@"success obj == %@",responseObject); } failure:^(AFHTTPRequestOperation *operation, NSError *error) { NSLog(@"faild , error == %@ ", error); }]; [operation start];