이 블록에 문제가 있습니다. NSURLSession
블록 안에있는 데이터를 가져 오려고합니다.NSURLSession을 사용하여 블록에서 데이터를 가져 오는 방법은 무엇입니까?
여기
-(NSDictionary *) RetrieveData{
NSURLSession * session = [NSURLSession sharedSession];
NSURL * url = [NSURL URLWithString: self.getURL];
dataList =[[NSDictionary alloc] init];
NSURLSessionDataTask * dataTask = [session dataTaskWithURL:url completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
self.json = [NSJSONSerialization JSONObjectWithData:data options:0 error:nil];
}];
return self.dataList;
[dataTask resume];
}
이 NSURLSession
의 블록 내부의 데이터를 얻을 수 있나요 내 코드입니까?
JSON을 블록 외부에서 사용하려고합니까? 이 블록은 비동기 적으로 실행되므로 JSON 구문 분석을 수행하는 블록이 실행되기 전에'[dataTask resume]'_well 다음에 나오는 라인을 사용하게됩니다. – Rob
안녕하세요. @Rob 내 게시물을 업데이트합니다. 예, json이 블록에서 데이터를 가져 와서 내 메서드에서 반환하도록하고 싶습니다. – user3818576
그렇지 않습니다. 다시 전달하려면 완료 블록 패턴을 사용해야합니다. – Rob