代码之家  ›  专栏  ›  技术社区  ›  Jordan

NSURLConnection超时?

  •  62
  • Jordan  · 技术社区  · 15 年前

    我正在和代表们使用这个nsurlconnection。

    nsconnection = [[NSURLConnection alloc] initWithRequest:request
        delegate:self startImmediately:YES];
    

    问题是网站根本没有响应。什么都没有,只是在浏览器中空白页旋转,没有失败。在我的代理中,我处理失败,但是当站点没有响应时,代理就不会被调用。有关于如何超时连接的想法吗?

    2 回复  |  直到 7 年前
        1
  •  127
  •   Pang Ajmal PraveeN    7 年前

    您可以在 NSURLRequest 对象。一种方法是通过 requestWithURL:cachePolicy:timeoutInterval: 方法。(你可以通过默认设置 NSURLRequestUseProtocolCachePolicy cachepolicy参数,如果你不想担心这个部分的话。)超时是一个以秒为单位的浮点值,就像iPhone SDK中的所有时间间隔一样。

    同时确保 NSURLConnection 的委托已设置并响应 connection:didFailWithError: 方法。连接总是调用此方法或 connectionDidFinishLoading: 连接完成后。

        2
  •  24
  •   Community CDub    7 年前

    编辑: 这个答案现在已经过时了,但在回答的日期是准确的。

    我知道这条线很旧,但我也遇到了这个问题。当在服务所在的内部网络之外测试应用程序时,就会发生这种情况。该服务最终会超时,但苹果公司要求在超时发生之前有240秒(4分钟)的时间。查看此线程以获取有关此问题的更多信息。

    NSMutableURLRequest not obeying my timeoutInterval