不调用NSURLSessionDataTask完成处理程序块

时间:2016-02-18 17:42:19

标签: ios iphone json parsing nsurlsession

以下是我的代码

      NSURL *serverUrl =[NSURL URLWithString:urlString];


NSURLSession *session=[NSURLSession sharedSession];
NSURLSessionDataTask *sessionTask =[session dataTaskWithURL:serverUrl completionHandler:^(NSData *data,NSURLResponse *response,NSError *errror){


    NSString *returnedString =[NSString stringWithUTF8String:[data bytes]];

    NSLog(@"returnedString %@",returnedString);


    NSError *parseError;

    NSArray *jsonArray=[NSJSONSerialization JSONObjectWithData:data options:0 error:&parseError];
    NSLog(@"jsonArray %@",jsonArray);


}];
[sessionTask resume];

不执行完成处理程序块。如果我保持断点并检查直到NSURLSessionDatatask它完美地工作。一旦它到达完成处理程序块,则断点跳转到[datatak resume]行。这是我的问题。请有人协助我解决这个问题。

1 个答案:

答案 0 :(得分:0)

completionHandler不会立即执行,就像名称听起来一样,只有在任务完成后才能执行。

所以它的正常行为是不立即执行completionHandler并转到下一行。