转自:http://blog.csdn.net/chenyufeng1991/article/details/48506171点击打开链接
(1) 请求的网络数据可以进行序列化,然后以二进制的形式输出。实现代码如下:
- - (void)viewDidLoad {
- [super viewDidLoad];
- AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
- //请求的序列化
- manager.requestSerializer = [AFHTTPRequestSerializer serializer];
- //回复的序列化
- manager.responseSerializer = [AFHTTPResponseSerializer serializer];
- // 设置回复内容信息
- manager.responseSerializer.acceptableContentTypes = [manager.responseSerializer.acceptableContentTypes setByAddingObject:@"text/html"];
- //执行请求;
- [manager GET:@"http://api.openweathermap.org/data/2.5/forecast/daily?lat=39.907501&lon=116.397232&cnt=10"
- parameters:nil
- success:^(AFHTTPRequestOperation *operation, id responseObject) {
- //这里输出的是二进制数据;
- NSLog(@"%@",responseObject);
- }
- failure:^(AFHTTPRequestOperation *operation, NSError *error) {
- }];
- }
返回的数据如下:
。
(2)当然也可以打印出文本:实现代码如下:
- - (void)viewDidLoad {
- [super viewDidLoad];
- AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
- //请求的序列化
- manager.requestSerializer = [AFHTTPRequestSerializer serializer];
- //回复的序列化
- manager.responseSerializer = [AFHTTPResponseSerializer serializer];
- // 设置回复内容信息
- manager.responseSerializer.acceptableContentTypes = [manager.responseSerializer.acceptableContentTypes setByAddingObject:@"text/html"];
- //执行请求;
- [manager GET:@"http://api.openweathermap.org/data/2.5/forecast/daily?lat=39.907501&lon=116.397232&cnt=10"
- parameters:nil
- success:^(AFHTTPRequestOperation *operation, id responseObject) {
- NSLog(@"%@",[[NSString alloc] initWithData:responseObject encoding:NSUTF8StringEncoding ]);
- }
- failure:^(AFHTTPRequestOperation *operation, NSError *error) {
- }];
- }
打印结果如下:
。
(3)直接使用JSON进行序列化请求。
- - (void)viewDidLoad {
- [super viewDidLoad];
- AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
- //请求的序列化
- manager.requestSerializer = [AFHTTPRequestSerializer serializer];
- //回复的序列化
- manager.responseSerializer = [AFJSONResponseSerializer serializer];
- // 设置回复内容信息
- manager.responseSerializer.acceptableContentTypes = [manager.responseSerializer.acceptableContentTypes setByAddingObject:@"text/html"];
- //执行请求;
- [manager GET:@"http://api.openweathermap.org/data/2.5/forecast/daily?lat=39.907501&lon=116.397232&cnt=10"
- parameters:nil
- success:^(AFHTTPRequestOperation *operation, id responseObject) {
- //这里输出的是二进制数据;
- NSLog(@"%@",responseObject);
- }
- failure:^(AFHTTPRequestOperation *operation, NSError *error) {
- }];
- }
返回的结果如下:
。