Alamofire 5得到错误代码,检查网络连接。

问题描述 投票:1回答:1

我的网络层使用Alamofire 5,我把网络错误定义如下。

我正在检查 response.error.isNetworkError 我总是得到false,因为现在我得到的代码是9而不是-1099。

extension Error {
    var code: Int { return (self as NSError).code }
    var domain: String { return (self as NSError).domain }

    var isNetworkError: Bool {
        switch code {
        case NSURLErrorCannotFindHost,
             NSURLErrorDNSLookupFailed,
             NSURLErrorDataNotAllowed,
             NSURLErrorNetworkConnectionLost,
             NSURLErrorNotConnectedToInternet:
            return true

        default:
            return false
        }
    }

}
swift alamofire
1个回答
0
投票
(afError.underlyingError as? NSError)?.errorCode == NSURLErrorNotConnectedToInternet

这应该可以工作

© www.soinside.com 2019 - 2024. All rights reserved.