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的使用方法:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
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]; |