ASIHTTPЗапрос тайм-аута не работает - PullRequest
0 голосов
/ 31 января 2012

Код следующий, однако я не могу понять, почему он не истекает даже после того, как прошло 10 секунд.Любая идея?

__block ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:sourceURL];
                        [request setTimeOutSeconds:5.0];
                        [request setDelegate:self];
                        [request setCompletionBlock:^{
                            //some code
                        }];

                        [request setFailedBlock:^{
                            //some code

                        }];


                        self.currentRequest_ = request;
                        [self.currentRequest_ startAsynchronous];


    - (void)requestFailed:(ASIHTTPRequest *)request {
        NSLog(@"FAILED");
    }

Ответы [ 2 ]

1 голос
/ 31 января 2012

Возможно, запрос был успешно выполнен тогда?

Другая возможность состоит в том, что данные были получены по крайней мере каждые 5 секунд, но полные данные еще не были получены.Время ожидания истекает только в том случае, если в течение периода ожидания ничего не получено, поэтому, если данные постоянно поступают, запрос не будет прерван.

0 голосов
/ 31 января 2012

Я не думаю, что вы звоните -[ ASIHTTPRequest startAsynchronous] ... Вместо этого добавьте запрос (который является подклассом NSOperation) к ASINetworkQueue (подкласс NSOperationQueue). НТН

...