【发布时间】:2017-07-13 11:36:50
【问题描述】:
我正在使用可达性来处理互联网连接。 每当未连接互联网时,我都会显示未连接到互联网的警报。
但是,当网速很慢并且从 API 提取数据的时间超过 10 秒时,我需要向用户显示互联网连接速度很慢的消息。
【问题讨论】:
-
我认为你可以在请求超时的情况下做到这一点。当请求超时发生时,您可以获得特定的错误代码,因此您可以显示网速慢对话框
标签: swift reachability
我正在使用可达性来处理互联网连接。 每当未连接互联网时,我都会显示未连接到互联网的警报。
但是,当网速很慢并且从 API 提取数据的时间超过 10 秒时,我需要向用户显示互联网连接速度很慢的消息。
【问题讨论】:
标签: swift reachability
我认为您需要增加在时间线上没有收到响应的特定请求的时间间隔。如果您使用的是 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
}
}
如果您需要更多帮助,请告诉我。
【讨论】: