如何检查互联网连接不良的Alamofire故障?

人气:567 发布:2022-10-16 标签: error-handling ios response swift alamofire

问题描述

如何检查我的Alamofire请求是否因为Internet连接不良而失败?我收到一个错误,但我如何知道它因此而失败

Error Domain=NSURLErrorDomain Code=-1005"网络连接丢失。"用户信息={_kCFStreamErrorCodeKey=-4,NSUnderlyingError=0x6000007fe6a0{错误域=kCFErrorDomainCFNetwork Code=-1005"(NULL)"用户信息={NSErrorPeerAddressKey={长度=28,容量=28,字节=0x1c1e1f960000000000000000000.0000000100000000},_kCFStreamEramErrsKey={Length=28,Capacity=28,Bytes=0x1c1e1f96000000000000000000000.0000000100000000},_kCFStreamEramErrsKey "LocalUploadTask.<;1>" )

推荐答案

您可以通过AFError中的underlyingError属性查看失败原因,如下所示

Alamofire.request("url", method: .post, parameters: parameters)
.responseJSON { response in
  if let afError = response.error,
  let underlyingError = afError.underlyingError as? URLError {
    switch underlyingError.code {
    case URLError.notConnectedToInternet:
        // do your thing here
    default:
        // any other URLError code handling
  }
}

968