我正在尝试从我的本地节点服务器拉取一些数据。服务器已经接收到了get请求并记录了下来,但是由于某种原因,我的iOS应用程序不会执行任何在完成处理程序中的代码。以下是代码:
- (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];
当程序运行时,nameLabel并没有改为“yay”。但是,如果我在NSURLSessionDataTask行之前尝试更改nameLabel,它就会改变。