【发布时间】:2014-10-22 01:36:42
【问题描述】:
遇到了NSURLConnection的问题,花了3天多的时间才找到解决办法 但不幸的是,我没有得到一个。 这是我的代码,这是在一个专门的类中,并使用 completehandler 返回
NSURL *myUrl = [NSURL URLWithString:targetSite];
NSMutableURLRequest *urlRequest = [NSMutableURLRequest requestWithURL:myUrl
cachePolicy:NSURLRequestReloadIgnoringCacheData
timeoutInterval:timeOutInterval];
[urlRequest setHTTPMethod:@"POST"];
[urlRequest setHTTPBody:MYBODYCONTENT];
conn = [[NSURLConnection alloc] initWithRequest:urlRequest delegate:self];
if(conn)
{
webData = [NSMutableData data];
}
并使用委托接收数据,它在“didReceiveResponse”、“didReceiveData”、“didFailWithError”、“connectionDidFinishLoading”、...中工作正常。
但是,如果发生请求超时,(我已经在“didFailWithError”中 [conn cancel])
然后,在一段时间内(我没有做精确的计数,而是大约 1 分钟)
我对同一台服务器的所有新请求(再次请求)将一次又一次地超时。
是不是我做错了什么?
或者我应该修改我的代码吗?
我已经尝试了很多解决方案,但仍然没有成功。
所以,寻求帮助,谢谢。
【问题讨论】:
-
你确定连接服务器没有问题吗?可能是您的网络或您要连接的服务器存在问题。如果请求超时,您可能需要等待一分钟以上才能重试相同的请求。
标签: ios timeout nsurlconnection