Я запускаю код приложения чата, он выдает ошибку во время аутентификации. Сообщение об ошибке показано ниже. Я пробовал несколько вещей, но пока ничего не вышло, если вам нужна другая информация, связанная с кодом, дайте мне знать.
Заранее спасибо
Код — это файл AppDelegate.Swift
internal func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
FirebaseApp.configure()
Auth.auth().signInAnonymously { (authUser, error) in
guard Auth.auth().currentUser != nil else {
print(error!)
abort()
}
self.uid = Auth.auth().currentUser!.uid
UserDefaults.standard.set(Auth.auth().currentUser!.uid, forKey: "uid")
let user = User(id: Auth.auth().currentUser!.uid, name: "ぼく")
UserRepository.shared.save(user)
}
return true
}
Сообщение об ошибке
Error Domain=FIRAuthErrorDomain Code=17999 "An internal error has occurred, print and inspect the error details for more information." UserInfo={FIRAuthErrorUserInfoNameKey=ERROR_INTERNAL_ERROR, NSLocalizedDescription=An internal error has occurred, print and inspect the error details for more information., NSUnderlyingError=0x6000016744b0 {Error Domain=FIRAuthInternalErrorDomain Code=3 "(null)" UserInfo={FIRAuthErrorUserInfoDeserializedResponseKey={
code = 400;
errors = (
{
domain = global;
message = "ADMIN_ONLY_OPERATION";
reason = invalid;
}
);
message = "ADMIN_ONLY_OPERATION";
}}}}
2 ответа
Лучший ответ
Убедитесь, что вы включили анонимный вход в консоли Firebase. Взгляните на картинку и включите отмеченный переключатель. Вы можете найти консоль Firebase здесь.
11
Constantin Beer
7 Сен 2019 в 09:36
Помимо ответа Константина Бира (т. Е. Включение метода анонимного входа из firebase), Google зарегистрировал это новая бета-функция (платформа идентификации), где вам нужно будет установить флажок Включить создание (регистрацию). Об этом еще нигде не упоминается в документации, Алекс Козловски потратил много времени на выяснение этого. Пожалуйста, обратитесь к изображению ниже
5
Vijender Kumar
3 Сен 2020 в 17:21
Мы приложение, которое использует 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
Судя по предоставленному вами ограниченному коду, похоже, вы используете Firebase версии 3.11.0 и FirebaseAuth версии 3.1.1. После последнего обновления Firebase функция «Вход с электронной почтой» больше не работает. Чтобы решить эту проблему, вам необходимо обновить Firebase и FirebaseAuth до их последних версий (6.2.0 и 6.1.1 соответственно).
Чтобы обновить модули, перейдите в папку проекта в терминале и введите pod update. Этот процесс может занять несколько минут (в зависимости от вашего компьютера и подключения). После того, как ваши модули будут обновлены, устраните все ошибки компиляции, и все будет готово!
Надеюсь это поможет!
Я смог решить проблему, выполнив:
pod 'Firebase/Database' , '~> 5.0'
И запустить pod update.
Другие вопросы по теме
4
ответов
ask in the appics grp
16:05 21.02.2022
Karan | INDIA T-HUB | |Blockchain Learner
ask in the appics grp
Do you have the group ?
16:06 21.02.2022
@appics_official
16:06 21.02.2022
🟣 BᴇᴇCᴇᴇBᴇᴇ
@appics_official
Thank you
16:08 21.02.2022