AFNetWorking请求数据方法

-(void)requestData{

    AFHTTPSessionManager * mannage = [AFHTTPSessionManager manager];
    mannage.responseSerializer.acceptableContentTypes = [NSSet setWithObject:@"text/plain"];
    NSString *urlString = @"http://mobile.ximalaya.com/mobile/v1/album/ts-1531886212572?ac=4G&albumId=14659743&device=iPhone&isAsc=true&pageSize=20&source=0&statEvent=pageview%2Falbum%4012610571&statModule=精品&statPage=tab%40发现_推荐&statPosition=1";
    //url中含有中文解决方法
    NSString* encodedString = [urlString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
    //他的这两个回调实在主线程里执行的,所以直接可以做UI操作
    [mannage GET:encodedString parameters:nil headers:nil progress:^(NSProgress * _Nonnull downloadProgress) {

    } success:^(NSURLSessionDataTask * _Nonnull task, id  _Nullable responseObject) {
        //数据请求成功的回调

         self.dic = responseObject[@"data"][@"album"];
         self.dataSource = [[NSMutableArray alloc]init];
         for (NSDictionary * dic in responseObject[@"data"][@"tracks"][@"list"]) {
            MyModel * model = [MyModel new];
            [model setValuesForKeysWithDictionary:dic];
            [self.dataSource addObject:model];
         }
        dispatch_async(dispatch_get_main_queue(), ^{
            //刷新表格
            [self.tableView reloadData];
            //表格头视图数据
            [self.headerView setValueForHeaderView:self.dic];



        });

    } failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {
        //请求失败的操作
        NSLog(@"%@",error.description);
    }];
}

猜你喜欢

转载自blog.csdn.net/chuck_phonics/article/details/81978516