ASIHTTPRequest超时无效

时间:2012-01-31 02:25:15

标签: iphone objective-c ipad asihttprequest

代码如下,但我无法弄清楚为什么即使在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 个答案:

答案 0 :(得分:1)

或许请求成功完成了吗?

其他可能性是至少每5秒钟收到一次数据,但尚未收到完整数据。如果超时期限内没有收到任何内容,ASI将只会超时,因此如果数据不断到达,请求将不会超时。

答案 1 :(得分:0)

我认为你不会调用-[ ASIHTTPRequest startAsynchronous] ...而是将请求(NSOperation的子类)添加到ASINetworkQueueNSOperationQueue的子类)。 HTH