NSURLConnection и блоки - PullRequest
       7

NSURLConnection и блоки

0 голосов
/ 02 декабря 2011

Мои обратные вызовы не вызываются. Я не настолько знаком с dispatch_async, поэтому есть мысли? Суть в том, что я никогда не вижу ответа.

+ (void)asyncRequest:(NSURLRequest *)request
         success:(void(^)(NSData *, NSURLResponse *))successBlock_ 
         failure:(void(^)(NSData *, NSError *))failureBlock_ 
{
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), ^{

    NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];

    NSURLResponse *response = nil;
    NSError *error = nil;

    NSData *data = [NSURLConnection sendSynchronousRequest:request
                                         returningResponse:&response 
                                                     error:&error];

    NSString *result = [[NSString alloc] initWithData:data encoding:NSASCIIStringEncoding];
    NSLog(@"-----------------result %@", result);

    if (error) {
        failureBlock_(data,error);
    } else {
        successBlock_(data,response);
    }
    [pool release];
});
}

1 Ответ

1 голос
/ 02 декабря 2011

Почему вы реализуете свой собственный метод sendAsync?

Вместо этого вы должны использовать предоставленный, NSURLClassReference

EDIT

Предполагается, что вы разрабатываете для OSX, а не iOS. Очевидно, этот метод недоступен для iOS.

...