【问题标题】:Swift handle slow internet connection快速处理缓慢的互联网连接
【发布时间】:2017-07-13 11:36:50
【问题描述】:

我正在使用可达性来处理互联网连接。 每当未连接互联网时,我都会显示未连接到互联网的警报。

但是,当网速很慢并且从 API 提取数据的时间超过 10 秒时,我需要向用户显示互联网连接速度很慢的消息。

【问题讨论】:

  • 我认为你可以在请求超时的情况下做到这一点。当请求超时发生时,您可以获得特定的错误代码,因此您可以显示网速慢对话框

标签: swift reachability


【解决方案1】:

我认为您需要增加在时间线上没有收到响应的特定请求的时间间隔。如果您使用的是 Alamofire,您可以通过以下方式增加超时间隔。

斯威夫特 3

let manager = Alamofire.SessionManager.default
manager.session.configuration.timeoutIntervalForRequest = 120

manager.request("yourUrl", method: .post, parameters: ["parameterKey": "value"])

您也会收到错误回电

switch response.result {
            case .success:

                 // Successfull API Response

            case .failure(let error):
                errorHandler(error)
                print(error.localizedDescription)

                if let error = error as? NSError {
                    print(error.code) // this will print error code                      
                }
  }

如果您需要更多帮助,请告诉我。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-11-07
    • 1970-01-01
    • 2011-04-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多