我有一个客户端/服务器应用程序,其中客户端是 iOS 应用程序,服务器是 RESTful api。我收到了关于请求超时的投诉,我知道在某些/大多数情况下,这是由于 wifi 连接不良造成的。在这些情况下,我想在客户端上显示一条错误消息,指示服务器是否收到了请求。
在 iOS 中是否可以区分从未到达预期目的地的 HTTP 请求和一路到达预期目的地但从未收到响应的 HTTP 请求之间的区别?
最佳答案
仅在检查您的互联网连接是否可达后才调用 API。如果未连接到互联网,则显示错误消息(这是由于 wifi 连接不良)
当检查时,make api调用会处理错误代码404(永远不会到达预期目的地)和504(超时错误代码永远不会收到响应),并让用户仅在状态代码为200时才能成功。但它很好还可以处理 401(授权错误)。
我不知道您正在使用哪个库,所以现在无法提供任何代码示例
尝试快速使用 Alamofire 库,我建议很好地处理错误代码。
关于ios - HTTP 请求超时。 wifi 信号弱或服务器速度慢?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42572075/