NSURLRequest 5 分钟发送一次
我用了AFNetworking这个框架做http请求框架,我有一个table list包含了subject,每次我点击一个cell,会呼叫 -(void)getDetailFromId:(NSInteger)id
并把id作为参数传过去,第一次点击cell时候,requset会立刻发送到服务器,并且返回数据,但是第二次,第三次...之后点击cell,requset都会返回timeout(code=-1001),等到5分钟后,服务器才会收到requset。只要一次timeout后,后面的request都会返回timeout。30分钟后再重新run 这个app,第一次没问题,第二次第三次...会timeout,请问是怎么回事,好像每次请求都没有结束,要等5分钟后才能发请求。这是我实现的代码
-(void)getDetailFromId:(NSInteger)id
{
NSString *path =[NSString stringWithFormate: @"http://www.myserver.com/api/get/id/%d", id.intValue];
AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
[manager GET:path parameters:nil success:^(AFHTTPRequestOperation *operation, id responseObject) {
do something
...
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
do something
...
}];
}
请问我这种做法是错误的吗?我用NSURLConnection,实现相关的delegate,也会有这个问题出现。通常的做法是怎么样的呢?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
1.GET方式获取数据,只要你接收到数据或者服务器响应了,那么这次请求就肯定结束了。
2.你给的代码信息量很少,不知道你是怎么触发这个方法的,移动设备通常会限制URLConnection并发链接数,iPhone真机通常是并发4个是上限,当有4个NSURLConnection同时运行时你再启动第5个肯定会超时。
3.如果你能确保你的操作每次只执行一次请求,那么检查一下你的服务器吧,可能不是客户端的原因,你可以用换一个其他的地址测试一下,比如反复GET某门户的首页看看每次返回的是不是状态码200和一堆html数据。
暂时只能帮你到这了。