J'essaie d'extraire des données de mon serveur de noeud local. Le serveur reçoit la demande get et la consigne, mais pour une raison quelconque, mon application iOS n'exécutera pas le code que j'ai dans le gestionnaire d'achèvement. Voici le code:NSURLSessionDataTask n'exécutant pas le bloc du gestionnaire d'achèvement
- (IBAction) buttonPressed{
NSURL *url = [NSURL URLWithString:@"http://127.0.0.1:3000/"];
NSURLSessionDataTask *dataTask =
[self.session dataTaskWithURL:url
completionHandler:^(NSData *data,
NSURLResponse *response,
NSError *error){
nameLabel.text = @"yay!";
/*
if (!error){
nameLabel.text = @"noerr";
NSHTTPURLResponse *httpResp = (NSHTTPURLResponse *)response;
if (httpResp.statusCode == 200){
NSError *jsonErr;
NSDictionary *usersJSON =
[NSJSONSerialization JSONObjectWithData:data
options:NSJSONReadingAllowFragments
error:&jsonErr];
if (!jsonErr){
// nameLabel.text = usersJSON[@"username"];
nameLabel.text = @"nojerr";
}
else{
nameLabel.text = @"jsonErr";
}
}
}
else{
nameLabel.text = @"Err";
}
*/
}];
[dataTask resume];
}
Lorsque le programme est exécuté, le nameLabel ne change pas à "yay". Cependant, si j'essaie de changer le nomLabel avant la ligne NSURLSessionDataTask, cela change.
Veuillez sélectionner la réponse ci-dessous si elle vous a aidé. N'hésitez pas à commenter si vous avez encore des questions liées à la réponse. – wigging