iOS网络编程:三、GET代理方式进行异步请求

@interface RootViewController ()<NSURLConnectionDataDelegate>
@property (nonatomic, strong) NSMutableArray *data;
@property (nonatomic, strong) NSMutableData *tempData;
@end


- (void)GetDelegateAction{
    //1 创建URL对象
    NSURL *url = [NSURL URLWithString:CQGETUEL];
    //2 创建URLRequest对象
    NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:url];
    // 3注意!!:同步和异步的不同
    [NSURLConnection connectionWithRequest:request delegate:self];
}
//当收到服务器响应的时候
-(void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response{
    //初始化结构数组
    self.data = [NSMutableArray array];
    //初始化缓冲水桶
    self.tempData = [NSMutableData data];
}
//接收数据
- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data{
    //将读取的部分拼接到水桶中;
    [self.tempData appendData:data];
}
    //当所有数据接收完毕的时候
- (void)connectionDidFinishLoading:(NSURLConnection *)connection{
   //对水桶的所有数据进行解析
    NSDictionary *dict = [NSJSONSerialization JSONObjectWithData:self.tempData options:NSJSONReadingAllowFragments error:nil];
    NSArray *arr = dict[@"news"];
    for (NSDictionary *dic in arr) {
        News *news = [[News alloc] init];
        [news setValuesForKeysWithDictionary:dic];
        [self.data addObject:news];
    }

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值