Alamofire API请求因Swift 3中的响应而失败



我正在使用Alamofire调用普通API调用,而我在Networking Manager类中没有传递任何数据。

我的网络类是

func executeGetRequest(url:String,requestVC:UIViewController,completionHandler:@escaping (_ responseObject:Any?) -> Void!,failureHandler:@escaping (_ connectionError:NSError?) -> Void!){
    //Checking internet alert
    if !self.isConnectedToInternet(){
        // requestVC.showAlert(kText_AppName, message: kText_NoInternet)
        return
    }
    requestVC.showLoader()
    Alamofire.request(url).responseJSON {
        (response:DataResponse) in
        requestVC.removeLoader()
        switch(response.result) {
        case .success(_):
            if response.result.value != nil{
                completionHandler (response.result.value)
            }
            break
        case .failure(let error):
            failureHandler (error as NSError?)
            break
        }
    }
}

我正在从我的主要班级打电话

kNetworkManager.executeGetRequest(url: kAppAccessTokenURL, requestVC: self, completionHandler: {
     (responseObject) -> () in
          print("responseObject:(responseObject!)")

      }, failureHandler: {(error)-> () in
          print("response object:(error!)")
          self.showAlert(message: (error?.description)!, title: kText_AppName)
          if error?._code == NSURLErrorTimedOut {
                //timeout here
                self.showAlert(message: kText_timeout, title: kText_AppName)
           }
      })

它始终得到请求失败,并显示错误为responseSerializationFailed

如果我直接在没有经理类的主类中呼叫

Alamofire.request(kAppAccessTokenURL).responseString { response in

我能够得到回应,任何人都可以建议我在网络类中出错。

在这里你

Alamofire.request(kAppAccessTokenURL).responseString

和那里

 Alamofire.request(url).responseJSON

看那个

     let jsonText = "{"first_name":"Sergey"}"
        var dictonary:NSDictionary?
        if let data = jsonText.dataUsingEncoding(NSUTF8StringEncoding) {
            do {
                dictonary =  try NSJSONSerialization.JSONObjectWithData(data, options: []) as? [String:AnyObject]
                if let myDictionary = dictonary
                {
                     print(" First name is: (myDictionary["first_name"]!)")
                }
            } catch let error as NSError {
                print(error)
            }
        }

相关内容

  • 没有找到相关文章

最新更新