5

可能重复:
如果数据开始加载但不是 webViewDidFinishLoad,则不会触发 NSMutableURLRequest 超时

我正在使用异步 HTTP 请求并将 NSMutableURLRequest 的超时设置为 30 秒,我想在这段时间内使请求超时。

问题:请求没有在 30 秒内超时。超时总是需要 90 秒。对此的任何解决方案。

这是我的连接代码:

NSMutableURLRequest *myRequest = [[NSMutableURLRequest alloc] initWithURL:myURL cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:30];
[myRequest setHTTPMethod:@"POST"];
[myRequest setHTTPBody:myData];

NSURLConnection *myConnection = [[NSURLConnection alloc] initWithRequest:myRequest delegate:self];

我正在实施以下委托:

- (void)connection:(NSURLConnection *)iConnection didReceiveResponse:(NSURLResponse *)iResponse;
- (void)connection:(NSURLConnection *)iConnection didReceiveData:(NSData *)iElementContructionContextData;
- (void)connection:(NSURLConnection *)iConnection didFailWithError:(NSError *)iError;
4

1 回答 1

5

您可以像这样设置 timeOutSeconds 的时间:-

[myRequest setTimeOutSeconds:1000];

根据自己设置timeOutSecond。

于 2011-06-14T05:14:05.793 回答