Kimlik doğrulama yöntemlerinde tamamlama geri çağırması, boş olmayan bir NSError
bağımsız değişkeni alırsa bir hata oluşmuştur. Üretim kodunuzdaki uygun hata işleme mantığına göndermek için hata kodunu yaygın hatalara ve aşağıda listelenen yönteme özgü hatalara göre kontrol edin.
Bazı hatalar belirli kullanıcı işlemleriyle çözülebilir. Örneğin, FIRAuthErrorCodeUserTokenExpired
kullanıcının tekrar oturum açarak çözmesi ve FIRAuthErrorCodeWrongPassword
kullanıcıdan doğru şifreyi girmesini isteyerek çözülebilir.
FIRAuthErrorCodeNetworkError
veya FIRAuthErrorCodeTooManyRequests
durumları hariç, başarısız bir işlemi aynı bağımsız değişkenlerle yeniden denemek hiçbir zaman başarılı olmaz. İşlemin sunucu tarafında gerçekleşip gerçekleşmediğine dair varsayımda bulunmayın.
Hataları araştırırken veya günlüğe kaydederken userInfo
sözlüğünü inceleyin.
FIRAuthErrorNameKey
, hatayı tanımlamak için kullanılabilecek bir platformlar arası hata adı dizesi içerir.
NSLocalizedDescriptionKey
, hatanın açıklamasını içeriyor. Bu açıklama kullanıcıya değil, geliştiriciye yöneliktir.
Temel bir hata varsa NSUnderlyingErrorKey
, söz konusu hataya neden olan temel hatayı içerir.
userInfo
sözlüğünde, yukarıda listelenen ana alanlara ek olarak hataları teşhis ederken faydalı bulabileceğiniz başka alanlar da olabilir.
Tüm API yöntemlerinde sık karşılaşılan hata kodları
Kod |
Anlamı |
FIRAuthErrorCodeNetworkError |
İşlem sırasında bir ağ hatası oluştuğunu belirtir. |
FIRAuthErrorCodeUserNotFound |
Kullanıcı hesabının bulunamadığını gösterir. Bunun nedeni, kullanıcı hesabının silinmiş olması olabilir. |
FIRAuthErrorCodeUserTokenExpired |
Geçerli kullanıcı jetonunun süresinin dolduğunu belirtir. Örneğin, kullanıcı başka bir cihazda hesap şifresini değiştirmiş olabilir. Kullanıcıdan bu cihazda tekrar oturum açmasını istemeniz gerekir. |
FIRAuthErrorCodeTooManyRequests |
Arayan cihazdan Firebase Authentication sunucularına anormal sayıda istek yapıldıktan sonra isteğin engellendiğini belirtir. Bir süre sonra tekrar deneyin. |
FIRAuthErrorCodeInvalidAPIKey |
Uygulamanın geçersiz bir API anahtarıyla yapılandırıldığını belirtir. |
FIRAuthErrorCodeAppNotAuthorized |
Uygulamanın, sağlanan API Anahtarı ile Firebase Authentication'ı kullanma yetkisinin olmadığını belirtir. Google API Konsolu'na gidin ve kimlik bilgileri sekmesinde kullandığınız API anahtarında uygulamanızın paket kimliğinin beyaz listeye alınmış olup olmadığını kontrol edin. |
FIRAuthErrorCodeKeychainError |
Anahtar zincirine erişilirken bir hata oluştuğunu belirtir. NSError.userInfo sözlüğündeki NSLocalizedFailureReasonErrorKey ve NSUnderlyingErrorKey alanları, karşılaşılan hatayla ilgili daha fazla bilgi içerir. |
FIRAuthErrorCodeInternalError |
Dahili bir hata oluştuğunu belirtir. Lütfen tüm NSError nesnesiyle birlikte hatayı bildirin. |
Yönteme özel hata kodları
FIRAuth
receiveProvidersForEmail:complete:
Kod |
Anlamı |
FIRAuthErrorCodeInvalidEmail |
E-posta adresinin hatalı biçimlendirilmiş olduğunu belirtir. |
signInWithEmail:sifre:tamamlama:
Kod |
Anlamı |
FIRAuthErrorCodeOperationNotAllowed |
E-posta ve şifre hesaplarının etkinleştirilmediğini belirtir. Bunları Firebase konsolunun Auth bölümünden etkinleştirebilirsiniz. |
FIRAuthErrorCodeInvalidEmail |
E-posta adresinin hatalı biçimlendirilmiş olduğunu belirtir. |
FIRAuthErrorCodeUserDisabled |
Kullanıcının hesabının devre dışı bırakıldığını belirtir. |
FIRAuthErrorCodeWrongPassword |
Kullanıcının yanlış bir şifreyle oturum açma girişiminde bulunduğunu belirtir. |
signInWithCredential:complete:
Kod |
Anlamı |
FIRAuthErrorCodeInvalidCredential |
Sağlanan kimlik bilgisinin geçersiz olduğunu belirtir. Bu durum, kodun süresi dolmuş veya hatalı biçimlendirilmiş olabilir. |
FIRAuthErrorCodeInvalidEmail |
Kimlik bilgisi EmailPasswordAuthCredential türündeyse e-posta adresinin hatalı olduğunu belirtir. |
FIRAuthErrorCodeOperationNotAllowed |
Kimlik bilgisinin temsil ettiği kimlik sağlayıcıya sahip hesapların etkinleştirilmediğini belirtir. Bunları Firebase konsolunun Auth bölümünden etkinleştirebilirsiniz. |
FIRAuthErrorCodeEmailAlreadyInUse |
Kimlik bilgisi tarafından onaylanan e-postanın (ör. Facebook erişim jetonundaki e-posta) bu oturum açma yöntemiyle kimliği doğrulanamayan mevcut bir hesap tarafından zaten kullanıldığını belirtir. Bu kullanıcının e-postasını almak için fetchProvidersForEmail numaralı telefonu arayın ve ardından döndürülen oturum açma sağlayıcılarından herhangi biriyle oturum açmasını isteyin. Bu hata yalnızca, Firebase konsolunda, Kimlik doğrulama ayarları altında "E-posta adresi başına bir hesap" ayarı etkinleştirilmişse verilir. |
FIRAuthErrorCodeUserDisabled |
Kullanıcının hesabının devre dışı bırakıldığını belirtir. |
FIRAuthErrorCodeWrongPassword |
Kimlik bilgisi EmailPasswordAuthCredential türündeyse, kullanıcının yanlış bir şifreyle oturum açma girişiminde bulunduğunu belirtir. |
signInAnonymouslyWithTamamlandı:
Kod |
Anlamı |
FIRAuthErrorCodeOperationNotAllowed |
Anonim hesapların etkinleştirilmediğini belirtir. Bunları Firebase konsolunun Auth bölümünden etkinleştirebilirsiniz. |
signInWithCustomToken:tamamlanma:
Kod |
Anlamı |
FIRAuthErrorCodeInvalidCustomToken |
Özel jetonla ilgili bir doğrulama hatası olduğunu gösterir. |
FIRAuthErrorCodeCustomTokenMismatch |
Hizmet hesabının ve API anahtarının farklı projelere ait olduğunu belirtir. |
createUserWithEmail:password:complete:
Kod |
Anlamı |
FIRAuthErrorCodeInvalidEmail |
E-posta adresinin hatalı biçimlendirilmiş olduğunu belirtir. |
FIRAuthErrorCodeEmailAlreadyInUse |
Kaydolma girişiminde kullanılan e-posta adresinin zaten mevcut olduğunu belirtir. Bu gibi kullanıcıların hangi oturum açma mekanizmalarını kullandığını kontrol etmek için fetchProvidersForEmail numaralı telefonu arayın ve kullanıcıdan bunlardan biriyle oturum açmasını isteyin. |
FIRAuthErrorCodeOperationNotAllowed |
E-posta ve şifre hesaplarının etkinleştirilmediğini belirtir. Bunları Firebase konsolunun Kimlik Doğrulama bölümünde etkinleştirebilirsiniz. |
FIRAuthErrorCodeWeakPassword |
Çok zayıf olarak kabul edilen bir şifre ayarlama girişimini gösterir. NSError.userInfo sözlük nesnesindeki NSLocalizedFailureReasonErrorKey alanı, kullanıcıya gösterilebilecek daha ayrıntılı açıklama içerir. |
çıkış:
Kod |
Anlamı |
FIRAuthErrorCodeKeychainError |
Anahtar zincirine erişilirken bir hata oluştuğu belirtildi. NSError.userInfo sözlüğündeki NSLocalizedFailureReasonErrorKey ve NSUnderlyingErrorKey alanları, karşılaşılan hatayla ilgili daha fazla bilgi içerir. |
FIRUser
FIRUser işlemleri için sık karşılaşılan hatalar
Kod |
Anlamı |
FIRAuthErrorCodeInvalidUserToken |
Oturum açmış kullanıcının, oturum bilgilerini içeren yenileme jetonunun geçersiz olduğunu belirtir. Kullanıcıdan bu cihazda tekrar oturum açmasını istemeniz gerekir. |
FIRAuthErrorCodeUserDisabled |
Kullanıcının hesabının devre dışı bırakıldığını ve Firebase konsolundaki Kullanıcılar panelinden tekrar etkinleştirilene kadar kullanılamayacağını belirtir. |
reauthenticateWithCredential:complete:
Kod |
Anlamı |
FIRAuthErrorCodeInvalidCredential |
Sağlanan kimlik bilgisinin geçersiz olduğunu belirtir. Bu durum, kodun süresi dolmuş veya hatalı biçimlendirilmiş olabilir. |
FIRAuthErrorCodeInvalidEmail |
Kimlik bilgisi EmailPasswordAuthCredential türündeyse e-posta adresinin hatalı olduğunu belirtir. |
FIRAuthErrorCodeWrongPassword |
Kimlik bilgileri EmailPasswordAuthCredential türündeyse, kullanıcının yanlış bir şifreyle yeniden kimlik doğrulama girişiminde bulunduğunu belirtir. |
FIRAuthErrorCodeUserMismatch |
Geçerli kullanıcı olmayan bir kullanıcıyla yeniden kimlik doğrulama girişiminde bulunulduğunu gösterir. |
FIRAuthErrorCodeOperationNotAllowed |
Kimlik bilgisinin temsil ettiği kimlik sağlayıcıya sahip hesapların etkinleştirilmediğini belirtir. Bunları Firebase konsolunun Auth bölümünden etkinleştirebilirsiniz. |
FIRAuthErrorCodeEmailAlreadyInUse |
Kimlik bilgisi tarafından onaylanan e-postanın (ör. Facebook erişim jetonundaki e-posta) mevcut bir hesap tarafından zaten kullanıldığını ve bu oturum açma yöntemiyle kimliği yeniden doğrulanamayan e-posta adresinin zaten kullanıldığını belirtir. Bu kullanıcının e-postasını almak için fetchProvidersForEmail numaralı telefonu arayın ve ardından döndürülen oturum açma sağlayıcılarından herhangi biriyle oturum açmasını isteyin. Bu hata yalnızca, Firebase konsolunda, Kimlik doğrulama ayarları altında "E-posta adresi başına bir hesap" ayarı etkinleştirilmişse verilir. |
FIRAuthErrorCodeUserDisabled |
Kullanıcının hesabının devre dışı bırakıldığını belirtir. |
güncellemeE-postası:tamamlama:
Kod |
Anlamı |
FIRAuthErrorCodeEmailAlreadyInUse |
E-posta adresinin başka bir hesap tarafından zaten kullanıldığını belirtir. |
FIRAuthErrorCodeInvalidEmail |
E-posta adresinin hatalı biçimlendirilmiş olduğunu belirtir. |
FIRAuthErrorCodeRequiresRecentLogin |
Bir kullanıcının e-postasının güncellenmesi, güvenlik açısından hassas bir işlemdir ve kullanıcının kısa süre önce giriş yapmasını gerektirir. Bu hata, kullanıcının yakın zamanda yeterince oturum açmadığını gösterir. Sorunu çözmek için FIRUser üzerinde reauthenticateWithCredential:completion: komutunu çağırarak kullanıcının kimliğini yeniden doğrulayın. |
güncellemesifresi:tamamlanma:
Kod |
Anlamı |
FIRAuthErrorCodeOperationNotAllowed |
Yöneticinin, belirtilen kimlik sağlayıcıyla oturum açmayı devre dışı bıraktığını belirtir. |
FIRAuthErrorCodeRequiresRecentLogin |
Kullanıcı şifresinin güncellenmesi, güvenlik açısından hassas bir işlemdir ve kullanıcının yakın zamanda giriş yapmasını gerektirir. Bu hata, kullanıcının yakın zamanda yeterince oturum açmadığını gösterir. Sorunu çözmek için FIRUser üzerinde reauthenticateWithCredential:completion: komutunu çağırarak kullanıcının kimliğini yeniden doğrulayın. |
FIRAuthErrorCodeWeakPassword |
Çok zayıf olarak kabul edilen bir şifre ayarlama girişimini gösterir. NSError.userInfo sözlük nesnesindeki NSLocalizedFailureReasonErrorKey alanı, kullanıcıya gösterilebilecek daha ayrıntılı açıklama içerir. |
linkWithCredential:complete:
Kod |
Anlamı |
FIRAuthErrorCodeProviderAlreadyLinked |
Bu hesaba zaten bağlı olan türdeki sağlayıcıyı bağlama girişimini gösterir. |
FIRAuthErrorCodeCredentialAlreadyInUse |
Farklı bir Firebase hesabına zaten bağlanmış bir kimlik bilgisiyle bağlantı kurma girişimini gösterir. |
FIRAuthErrorCodeOperationNotAllowed |
Kimlik bilgisinin temsil ettiği kimlik sağlayıcıya sahip hesapların etkinleştirilmediğini belirtir. Bunları Firebase konsolunun Auth bölümünden etkinleştirebilirsiniz. |
Bu yöntem, FIRUser
üzerinde updateEmail:completion:
ve updatePassword:completion:
ile ilişkili hata kodları da döndürebilir.
linkFromProvider:complete:
Kod |
Anlamı |
FIRAuthErrorCodeNoSuchProvider |
Hesaba bağlı olmayan bir sağlayıcının bağlantısını kaldırma girişimini gösterir. |
FIRAuthErrorCodeRequiresRecentLogin |
E-posta güncellemesi, kullanıcının yakın zamanda giriş yapmasını gerektiren güvenlik açısından hassas bir işlemdir. Bu hata, kullanıcının yakın zamanda yeterince oturum açmadığını gösterir. Sorunu çözmek için FIRUser üzerinde reauthenticateWithCredential:completion: komutunu çağırarak kullanıcının kimliğini yeniden doğrulayın. |
sendEmailDoğrulamaWithTamamlandı:
Kod |
Anlamı |
FIRAuthErrorCodeUserNotFound |
Kullanıcı hesabının bulunamadığını gösterir. |
deleteWithTamamlandı:
Kod |
Anlamı |
FIRAuthErrorCodeRequiresRecentLogin |
Kullanıcı hesabının silinmesi, kullanıcının yakın zamanda giriş yapmasını gerektiren, güvenlik açısından hassas bir işlemdir. Bu hata, kullanıcının yakın zamanda yeterince oturum açmadığını gösterir. Sorunu çözmek için FIRUser üzerinde reauthenticateWithCredential:completion: komutunu çağırarak kullanıcının kimliğini yeniden doğrulayın. |