gpt4 book ai didi

ios - 在尝试在 Alamofire 中解析结果之前处理无互联网连接错误

转载 作者:IT王子 更新时间:2023-10-29 05:24:45 24 4
gpt4 key购买 nike

Alamofire在没有网络连接的情况下报错怎么处理?我尝试检查数据是否为零,但它不起作用。

下面是我如何使用 Alamofire

Alamofire.request(.POST, REGISTER_URL, parameters: parameters, encoding: .JSON, headers: getAuthenticationHeader()).response { (request, response, data, errorType) -> Void in

let resultObject: APIResults = APIResults(JSONDecoder(data!));
let responseCode: Int = Int(resultObject.code!)!;// THIS CRASHES WHEN THERE IS NO INTERNET CONNECTION

if (responseCode == 200) {
available = true;
}

finished = true;

}

最佳答案

Swift 3 解决方案

假设您有一个 Error 实例,您可以执行以下操作:

if let err = error as? URLError, err.code  == URLError.Code.notConnectedToInternet
{
// No internet
}
else
{
// Other errors
}

您只需将 error 转换为 URLError。这是有效的,因为 URLError 实现了 Error 协议(protocol)。这是苹果文档中的引述以供引用:

URLError: Describes errors in the URL error domain.

一旦你有了一个 URLError 实例,你可以简单地比较它的 code 属性,这是一个 URLError.Code 枚举,与任何相关的枚举案例(在我们的示例中 URLError.Code.notConnectedToInternet)。

关于ios - 在尝试在 Alamofire 中解析结果之前处理无互联网连接错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32580412/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com