iOS swift Как позвонить в Alamofire с обратным вызовом, чтобы получить данные в Viewcontroller - PullRequest
0 голосов
/ 30 октября 2019

Я использую Alamofire [pod 'Alamofire', '~> 5.0.0-rc.3'] в моем проекте и AFWrapper, созданный в классе-обертке для функций Alamofire, как использовать обработчики завершения для получения данных в контроллерах представления.

this is AFWrapper class code
     class AFWrapper
            {
  This is my post request code

        func requestPOSTURL(_ strURL : String, params : [String : AnyObject]?, headers : [String : String]?, success:@escaping (JSON) -> Void, failure:@escaping (Error) -> Void){
            Alamofire.request(strURL, method: .post, parameters: params, encoding: JSONEncoding.default, headers: headers).responseJSON { (responseObject) -> Void in
                //print(responseObject)
                if responseObject.result.isSuccess {
                    let resJson = JSON(responseObject.result.value!)
                    success(resJson)
                }
                if responseObject.result.isFailure {
                    let error : Error = responseObject.result.error!
                    let dic = ["NSLocalizedDescription" : error.localizedDescription]
                    failure(error)
                }
            }
        }

This is my get request code

                func requestGetWithParamsURL(_ strURL : String, headers : [String : String]?, params : [String : AnyObject]?, success:@escaping (JSON) -> Void, failure:@escaping (Error) -> Void){

                    Alamofire.request(strURL, method: .get, parameters: params, encoding: JSONEncoding.default, headers: headers).responseJSON { (responseObject) -> Void in
                        //print(responseObject)
                        if responseObject.result.isSuccess {
                            let resJson = JSON(responseObject.result.value!)
                            success(resJson)
                        }
                        if responseObject.result.isFailure {
                            let error : Error = responseObject.result.error!
                            let dic = ["NSLocalizedDescription" : error.localizedDescription]


                            failure(error)
                        }
                    }

                }


        }
...