Как установить идентификатор для «error» в alamofire для страницы входа - PullRequest
0 голосов
/ 11 апреля 2020

Я пытаюсь установить идентификатор ошибки, чтобы пользователь получал сообщение об ошибке в errorLabel, если введенная информация неверна. Я пытался поместить 'error' в { (response) in, но это привело к ошибкам. Какой хороший способ справиться с этим.

AF.request(url, method: .post, parameters: parameters as Parameters, encoding: URLEncoding.default).response { (response) in

            print(response)

           if  error != nil {
               // Couldn't sign in
               self.errorLabel.text = error!.localizedDescription
               self.errorLabel.alpha = 1
           }
           else {

               let tabBarController =
                   self.storyboard?.instantiateViewController(identifier: Constants.Storyboard.TabBarController) as? UITabBarController

               self.view.window?.rootViewController = tabBarController
               self.view.window?.makeKeyAndVisible()
            }
          }
        }

1 Ответ

0 голосов
/ 11 апреля 2020

Вы можете идентифицировать ошибку, используя корпус переключателя в alamofire.

AF.request(url, method: .post, parameters: parameters as Parameters, encoding: 
URLEncoding.default).response { (response) in

        switch response.result {
             case .success:
             //sign in
             let tabBarController =
             self.storyboard?.instantiateViewController(identifier: Constants.Storyboard.TabBarController) as? UITabBarController
             self.view.window?.rootViewController = tabBarController
             self.view.window?.makeKeyAndVisible()

             case .failure(let error):
             // Couldn't sign in
             self.errorLabel.text = error!.localizedDescription
             self.errorLabel.alpha = 1
        }
      }
...