ios - HTTP 请求超时。 wifi 信号弱或服务器速度慢?

标签 ios swift httprequest

我有一个客户端/服务器应用程序,其中客户端是 iOS 应用程序,服务器是 RESTful api。我收到了关于请求超时的投诉,我知道在某些/大多数情况下,这是由于 wifi 连接不良造成的。在这些情况下,我想在客户端上显示一条错误消息,指示服务器是否收到了请求。

在 iOS 中是否可以区分从未到达预期目的地的 HTTP 请求和一路到达预期目的地但从未收到响应的 HTTP 请求之间的区别?

最佳答案

  1. 仅在检查您的互联网连接是否可达后才调用 API。如果未连接到互联网,则显示错误消息(这是由于 wifi 连接不良)

    示例:Check for internet connection availability in Swift

  2. 当检查时,make api调用会处理错误代码404(永远不会到达预期目的地)和504(超时错误代码永远不会收到响应),并让用户仅在状态代码为200时才能成功。但它很好还可以处理 401(授权错误)。

我不知道您正在使用哪个库,所以现在无法提供任何代码示例

尝试快速使用 Alamofire 库,我建议很好地处理错误代码。

关于ios - HTTP 请求超时。 wifi 信号弱或服务器速度慢?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42572075/

相关文章:

ios - SpriteKit moveByX 成功了一半

ios - 使用 Monotouch 和 iOS 从服务中提取数据 (JSON) 的理想方式?

swift - 为什么我不能在 Swift 中对 double 元组使用 min()?

java - Java 中的 HttpRequest 发布

java - Android:使用基本身份验证无法从 http get 请求中获取 xml

javascript - 从一个 Parse 应用程序在另一个 Parse 应用程序中调用 Cloud Call

iphone - 尝试在 ios 中使用 TableView ,出现错误

php - 一个 SQL 行到一个 UILabel

swift - 获取具有多个部分的表中一行的索引路径

swift - 如何更改 UIAlertController 高度?