首页 > 解决方案 > Moya 和 Alamofire 奇怪的超时错误

问题描述

我目前使用 Moya 和 Alamofire 从 iOS 的服务器获取数据。它以前完美无缺。但是,只有ios由于一些未知原因无法获取数据。对于邮递员,android 正在努力从服务器获取数据。

如果我只是使用 Alamofire 获取数据,但使用 moya 无法正常工作......

有谁知道或解决了这个问题?

错误域=NSURLErrorDomain 代码=-1001 “请求超时。” UserInfo={NSUnderlyingError=0x60400025fb90 {错误域=kCFErrorDomainCFNetwork Code=-1001 "(null)" UserInfo={_kCFStreamErrorCodeKey=-2102, _kCFStreamErrorDomainKey=4}}

extension ServerRequestService: TargetType {
  var baseURL: URL { return URL(string: CRConstant.API.requestHostForProduction)! }

  var path: String {
    switch self {
    case .main: return "/main"
    }
  }

  var method: Moya.Method {
    switch self {
    case .main: return .get
    }
  }

  var task: Task {
    switch self {
    case .main: var param = [String: Any](); param["device"] = IOS
      return .requestParameters(parameters: param, encoding: JSONEncoding.default)
    }
  }

  ServerRequestService.request(.main) { [weak self] result in
    guard let `self` = self else {
      return
    }

    switch result {
    case let .success(response):
      print(response.data)
    case let .failure:
      print("failed")
    }
}

标签: iosiphoneswiftalamofiremoya

解决方案


推荐阅读