2017-03-03 41 views
0

我有一个客户端/服务器应用程序,其中客户端是iOS应用程序,服务器是RESTful API。我收到了关于请求超时的投诉,而且我知道有些/大部分时间,这是由于无线网络连接差。在这些情况下,我想在客户端上显示一条错误消息,指出服务器是否收到请求。HTTP请求超时。弱wifi或缓慢的服务器?

是否有可能在iOS中分辨从未达到预期目的地的HTTP请求与一直到达预期目的地但始终未收到响应的HTTP请求之间的区别?

你只检查后,您的互联网连接是否可达,或者如果没有连接到互联网不是.show错误信息
+0

可能是你的数据很高 –

+0

我认为你不能分辨,直到你得到服务器的响应 – Dherya

+0

有一种情况发生在你连接到互联网,但速度你得到0 kb /秒或一些东西。因此,可达性仍然将其视为连接到互联网,但您根本无法获得速度。在这种情况下,只有很长一段时间后,你会得到* timeout *错误。 – Rikh

回答

0
  1. API调用(这是由于不良的WiFi连接)

    例子:Check for internet connection availability in Swift

  2. 当它的checked api调用处理错误代码404(永远不会到达预期的目的地)和504(超时错误代码永远不会收到响应)并让用户只有当状态代码是200时才成功。但是它的好处理401(授权错误)也。

我不知道你使用的是哪个库,为什么不能提供任何代码示例,现在

尝试Alamofire库中迅速,我建议处理错误代码非常好。