NSURLRequest 5 分钟发送一次

发布于 2022-08-29 20:08:30 字数 943 浏览 12 评论 0

我用了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 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

变身佩奇 2022-09-05 20:08:30

1.GET方式获取数据,只要你接收到数据或者服务器响应了,那么这次请求就肯定结束了。

2.你给的代码信息量很少,不知道你是怎么触发这个方法的,移动设备通常会限制URLConnection并发链接数,iPhone真机通常是并发4个是上限,当有4个NSURLConnection同时运行时你再启动第5个肯定会超时。

3.如果你能确保你的操作每次只执行一次请求,那么检查一下你的服务器吧,可能不是客户端的原因,你可以用换一个其他的地址测试一下,比如反复GET某门户的首页看看每次返回的是不是状态码200和一堆html数据。

暂时只能帮你到这了。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文