Firebase Auth Внутренняя ошибка при попытке входа - PullRequest
4 голосов
/ 16 июня 2019

Мы приложение, которое использует FireBase для создания и входа пользователей. Раньше вход работал нормально, но недавно он начал выдавать «Внутреннюю ошибку» (на картинке ниже) всякий раз, когда мы пытаемся войти с помощью электронной почты и пароля

Я проверил, чтобы в firebase был включен метод входа (электронная почта и пароль)

FIRAuth.auth()?.signIn(withEmail: signInEmail.text!, password: signInPassword.text!, completion: { (user, error) in
    if(error == nil) {
        print("SUCCESS: User authenticated with firebase")
        if let user = user {
            KeychainWrapper.standard.set(user.uid, forKey: KEY_UID)
            print("SUCCESS: Data saved to keychain")
        }
    } else {
        print(error?.localizedDescription)
        print("Debug Description")
        print(error.debugDescription)
    }
}

Это описание отладки, которое появляется

Optional(Error Domain=FIRAuthErrorDomain Code=17999 "An internal error has occurred, print and inspect the error details for more information." UserInfo={error_name=ERROR_INTERNAL_ERROR, NSLocalizedDescription=An internal error has occurred, print and inspect the error details for more information., NSUnderlyingError=0x2835ccbd0 {Error Domain=FIRAuthInternalErrorDomain Code=4 "(null)" UserInfo={FIRAuthErrorUserInfoDeserializedResponseKey={
    displayName = "";
    email = "lilhughes12@gmail.com";
    expiresIn = 3600;
    idToken ="eyJhbGciOiJSUzI1NiIsImtpZCI6IjU0OGYzZjk4N2IxNzMxOWZlZDhjZDc2ODNmNTIyNWEyOTY0YzY5OWQiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJodHRwczovL3NlY3VyZXRva2VuLmdvb2dsZS5jb20vbXJwYXJ0eS05MTNkMiIsImF1ZCI6Im1ycGFydHktOTEzZDIiLCJhdXRoX3RpbWUiOjE1NjA2NDc2MzcsInVzZXJfaWQiOiJ3aDlDQkdCYk1uY2Rvd044aUdXRVN0bXVlMk0yIiwic3ViIjoid2g5Q0JHQmJNbmNkb3dOOGlHV0VTdG11ZTJNMiIsImlhdCI6MTU2MDY0NzYzNywiZXhwIjoxNTYwNjUxMjM3LCJlbWFpbCI6ImxpbGh1Z2hlczEyQGdtYWlsLmNvbSIsImVtYWlsX3ZlcmlmaWVkIjpmYWxzZSwiZmlyZWJhc2UiOnsiaWRlbnRpdGllcyI6eyJlbWFpbCI6WyJsaWxodWdoZXMxMkBnbWFpbC5jb20iXX0sInNpZ25faW5fcHJvdmlkZXIiOiJwYXNzd29yZCJ9fQ.i2qRZuZPPnxpKVN-4mWVwG8dZuTMvc10QV3MxzB_La_FBNqpBrErTPjGF9PiUSOtV60YpSFKtLTFdcS5GixvN3DCvVs8OxpGBykPyoS6c4ronm9Q0hU0nK8Mc_8Ahpkq9FZkfTGdTrVyUOM9j3gs8fhFOqa5mw-1u4mNNF_lQitt1xL2FuQeXhFNMYJm14HVxlKQh0Bxb_b7ogdjOzw1BcHsTsz0zLwWx-BTqOc6jyArCSZdTBJ4x-bgSl1m-JxinOUiTMATUdB9hnXRMZEUfd1s6hL6EvpZsT95Yxfgnu8sx1yOTbApRmNYR6TGDZjXDTjpY0mUqP-_YWD7V1yY4g";
    kind = "identitytoolkit#SignInWithPasswordResponse";
    localId = wh9CBGBbMncdowN8iGWEStmue2M2;
    refreshToken = "AEu4IL0vI7r7MpOLHLKNYUP8EH1i85KB8NUUA4PXSkYBa8Gmf7HhW77tqAU1aL3_zlPRdcIqrQR023l-X7mCoZe8MYgabwBXb9q9z23j7UtPAwk4QMNByOg97xqaNLejucqAXEDS2LkrvL1Ql58E1fDme4DdY4767kKj3ITrunym9HlbgVjBY4xJMZZyAS8tCFeMI8DQoEkJaNw5s_Wjs7bAejLfTjxjHw";
    registered = 1;
    }}}})

Ответы [ 2 ]

6 голосов
/ 17 июня 2019

Исходя из предоставленного вами ограниченного кода, похоже, что вы используете Firebase версии 3.11.0 и FirebaseAuth версии 3.1.1.Начиная с последнего обновления Firebase, функция «Войти через электронную почту» больше не работает.Чтобы решить эту проблему, вам придется обновить Firebase и FirebaseAuth до их последних версий (6.2.0 и 6.1.1 соответственно).

Чтобы обновить ваши модули, перейдите в папку вашего проекта в терминале и введите pod update.Этот процесс может занять несколько минут (в зависимости от вашего компьютера и подключения).После того, как ваши модули были обновлены, устраните все ошибки компиляции, и все должно быть готово!

Надеюсь, это поможет!

0 голосов
/ 24 июня 2019

Мне удалось решить проблему, выполнив:

pod 'Firebase/Database' , '~> 5.0'

И запустив pod update.

...