我的网络层使用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
}
}
}
(afError.underlyingError as? NSError)?.errorCode == NSURLErrorNotConnectedToInternet
这应该可以工作