码迷,mamicode.com
首页 > Web开发 > 详细

NSURLConnection 异步加载网络数据

时间:2015-08-10 16:07:34      阅读:125      评论:0      收藏:0      [点我收藏+]

标签:

#import "ViewController.h"


@interface ViewController ()


@end


@implementation ViewController


- (void)viewDidLoad {

    [super viewDidLoad];

    //[self takeRequestUrlWithString:@"http://127.0.0.1/test.json"];

    //[self takeRequestUrlWithString:@"http://www.baidu.com"];

}


-(void)takeRequestUrlWithString:(NSString*)str

{

    NSURL *url=[NSURL URLWithString:str];

    NSURLRequest *request=[NSURLRequest requestWithURL:url cachePolicy:1 timeoutInterval:15];

    [NSURLConnection sendAsynchronousRequest:request queue:[NSOperationQueue mainQueue] completionHandler:^(NSURLResponse *response, NSData *data, NSError *connectionError) {

            if(!connectionError)

            {

                NSHTTPURLResponse *httpResponse=(NSHTTPURLResponse*)response;

                if (httpResponse.statusCode==200) {

                    NSError *error=nil;

                    //返回的要么是字典要么是数组

                    id needData=[NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:&error];

                    if(error)

                    {

                        NSLog(@"JSON 解析出错:%@",error);

                    }

                    else{

                        NSLog(@"模型转换:数据为:%@",needData);

                    }

                }

                else

                {

                    NSLog(@"服务器出错 ,错误码:%ld",httpResponse.statusCode);

                }

                

            }

            else{

                NSLog(@"连接错误!!!");

            }

    }];

}

@end


@interface RYDataModel : NSObject


@property(nonatomic,strong)NSNumber *age;

@property(nonatomic,copy)NSString*name;

@property(nonatomic,strong)NSDictionary*school;


+(instancetype)dataWithDict:(NSDictionary*)dict;


@end


@implementation RYDataModel


+(instancetype)dataWithDict:(NSDictionary*)dict

{

    RYDataModel *model=[RYDataModel new];

    [model setValuesForKeysWithDictionary:dict];

    return model;

}


@end

NSURLConnection 异步加载网络数据

标签:

原文地址:http://www.cnblogs.com/tangranyang/p/4718246.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!