我試圖從我的本地節點服務器拉一些數據。服務器正在獲取請求並記錄它,但由於某種原因,我的iOS應用程序不會執行完成處理程序中的任何代碼。下面是代碼:NSURLSessionDataTask不執行完成處理程序塊
- (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不會更改爲 「耶」。但是,如果我嘗試更改NSURLSessionDataTask行之前的nameLabel,它會更改。
請選擇下面的答案,如果它幫助你。如果您仍然有與答案有關的問題,請隨時發表評論。 – wigging