一、介绍:AFNetWorking是IOS重要的框架之一,用于实现访问服务器,请求网络数据,上传数据等功能。
二、原理:
三、使用:在使用AFNetWorking之前,需要去下载这个框架,个人推荐去http://afnetworking.com/官网下载,目前最新版的是2.4.1版本。下载之后打开,将里面的AFNetWorking 文件夹拷贝至你的程序中并且在在Supporting Files文件夹中添加以下代码:
#import "AFNetworking.h"
如图所示:
四、实现:代码如下
// 1.创建链接对象
NSString *netString = _netText.text;
// NSString *urlString = @"http://www.baidu.com/";
NSString *urlString = [NSString stringWithFormat:@"http://%@/",netString];
// 2.构造request
// 1)请求参数的格式化对象
AFHTTPRequestSerializer *serializer = [AFHTTPRequestSerializer serializer];
// 2)创建request
NSMutableURLRequest *request = [serializer requestWithMethod:@"GET"
URLString:urlString
parameters:nil
error:nil];
// 3.构造链接对象
AFHTTPRequestOperation *operation = [[AFHTTPRequestOperation alloc] initWithRequest:request];
// 4.设置返回数据类型为json
// operation.responseSerializer = [AFJSONResponseSerializer serializerWithReadingOptions:NSJSONReadingMutableContainers];
// 设置返回数据类型为xml
// operation.responseSerializer = [AFXMLParserResponseSerializer serializer];
// 5.创建调用成功或者失败的block
[operation setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation, id responseObject) {
NSString *string = [[NSString alloc] initWithData:responseObject encoding:NSUTF8StringEncoding];
_textField.text = string;
NSLog(@"欧耶我们成功了,responseObject=%@",string);
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
NSLog(@"天啦我们失败了,error=%@",error);
}];
// 6.添加到主进程
queue = [[NSOperationQueue alloc] init];
[queue addOperation:operation];
[self.view endEditing:YES];