AFN网络的iOS块问题
我目前正在学习积木,我想将它们用于AFN网络的iOS块问题,ios,objective-c,syntax,afnetworking,Ios,Objective C,Syntax,Afnetworking,我目前正在学习积木,我想将它们用于AFNetworking。我用单音制作方法: - (void)getAllPlayers:(void (^)(NSArray *playerz, bool succeed))blockPlayers { AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager]; [manager GET:@"https://api.myjson.com/bin
AFNetworking
。我用单音制作方法:
- (void)getAllPlayers:(void (^)(NSArray *playerz, bool succeed))blockPlayers {
AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
[manager GET:@"https://api.myjson.com/bins/530re" parameters:nil success:^(AFHTTPRequestOperation *operation, id responseObject) {
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
NSLog(@"Error: %@", error);
}];
}
我在viewDidLoad中调用了此方法:
[[Manager sharedInstance]getAllPlayers:^(NSArray *playerz, bool succeed) {
if (succeed == YES) {
self.allClubs = playerz;
[self.tableView reloadData];
}
}];
但是没有下载任何内容。
您忘记调用blockPlayers完成处理程序了
- (void)getAllPlayers:(void (^)(NSArray *playerz, bool succeed))blockPlayers {
AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
[manager GET:@"https://api.myjson.com/bins/530re" parameters:nil success:^(AFHTTPRequestOperation *operation, id responseObject) {
NSarray *returnedPLayerz = [NSArray array];
//Here treat operation and response Object to extract playerz and assing it to returnedPlayerz
blockPLayers(returnedPlayerz, YES);
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
blockPlayers(nil, NO);
NSLog(@"Error: %@", error);
}];
}
您从响应对象中的服务器获取了数据。之后,您需要对其进行解析并在块中返回:
- (void)getAllPlayers:(void (^)(NSArray *playerz, bool succeed))blockPlayers {
AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
[manager GET:@"https://api.myjson.com/bins/530re" parameters:nil
success:^(AFHTTPRequestOperation *operation, id responseObject) {
NSArray* players = [self getPlayersFromJson:responseObject];
blockPlayers(players, YES);
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
blockPlayers(nil, NO);
}];
}
因此,您需要创建解析器方法getPlayersFromJson什么是“未下载任何内容”?有错误吗?您是否从成功块中剪切了代码,或者它实际上是空的?您需要在网络调用的完成处理程序中调用传入到
GetAllPlayer
的块。我不明白?我对iOS开发基本上是新手。