Kimlik Doğrulama yöntemlerindeki tamamlama geri çağrısı, sıfır olmayan bir NSError
bağımsız değişkeni alırsa, bir hata oluştu. Üretim kodunuzdaki uygun hata işleme mantığına sevk etmek için, hata kodunu aşağıda listelenen yaygın hatalara ve yönteme özel hatalara karşı kontrol edin.
Bazı hatalar belirli kullanıcı eylemleriyle çözülebilir; örneğin, FIRAuthErrorCodeUserTokenExpired
, kullanıcı yeniden oturum açarak ve FIRAuthErrorCodeWrongPassword
, kullanıcıdan doğru parolayı girmesi istenerek çözülebilir.
FIRAuthErrorCodeNetworkError
veya FIRAuthErrorCodeTooManyRequests
durumu dışında, aynı argümanlarla başarısız bir işlemi yeniden denemek asla başarılı olmaz. İşlemin sunucu tarafında etkili olup olmadığı konusunda herhangi bir varsayımda bulunmayın.
Hataları araştırırken veya günlüğe userInfo
sözlüğünü inceleyin. FIRAuthErrorNameKey
, hatayı tanımlamak için kullanılabilecek bir platformlar arası hata adı dizesi içerir. NSLocalizedDescriptionKey
, hatanın bir açıklamasını içerir. Bu açıklama kullanıcı için değil geliştirici içindir. NSUnderlyingErrorKey
, temel alınan bir hata varsa, söz konusu hataya neden olan temel hatayı içerir.
Yukarıda listelenen ana alanlara ek olarak, userInfo
sözlüğünde hataları teşhis ederken faydalı bulabileceğiniz başka alanlar da olabilir.
Tüm API yöntemlerinde ortak olan hata kodları
kod | Anlam |
---|
FIRAuthErrorCodeNetworkError | İşlem sırasında bir ağ hatası oluştuğunu gösterir. |
FIRAuthErrorCodeUserNotFound | Kullanıcı hesabının bulunamadığını gösterir. Bu, kullanıcı hesabı silinmişse olabilir. |
FIRAuthErrorCodeUserTokenExpired | Geçerli kullanıcının jetonunun süresinin dolduğunu gösterir; ö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 Kimlik Doğrulama sunucularına anormal sayıda istek yapıldıktan sonra isteğin engellendiğini gösterir. Bir süre sonra tekrar deneyin. |
FIRAuthErrorCodeInvalidAPIKey | Uygulamanın geçersiz bir API anahtarıyla yapılandırıldığını gösterir. |
FIRAuthErrorCodeAppNotAuthorized | Uygulamanın, sağlanan API Anahtarı ile Firebase Kimlik Doğrulamasını kullanma yetkisi olmadığını belirtir. Google API Konsolu'na gidin ve kullandığınız API anahtarının, uygulamanızın paket kimliğinin beyaz listeye eklendiğini, kimlik bilgileri sekmesinin altında kontrol edin. |
FIRAuthErrorCodeKeychainError | Anahtar zincirine erişirken bir hata oluştuğunu gösterir. NSError.userInfo sözlüğündeki NSLocalizedFailureReasonErrorKey ve NSUnderlyingErrorKey alanları, karşılaşılan hata hakkında daha fazla bilgi içerecektir. |
FIRAuthErrorCodeInternalError | Dahili bir hata oluştuğunu gösterir. Lütfen hatayı tüm NSError nesnesiyle bildirin. |
Yönteme özel hata kodları
FIRAuth
fetchProvidersForEmail:tamamlama:
kod | Anlam |
---|
FIRAuthErrorCodeInvalidEmail | E-posta adresinin hatalı biçimlendirildiğini gösterir. |
signInWithEmail:şifre:tamamlama:
kod | Anlam |
---|
FIRAuthErrorCodeOperationNotAllowed | E-posta ve parola hesaplarının etkinleştirilmediğini gösterir. Bunları Firebase konsolunun Yetkilendirme bölümünde etkinleştirin. |
FIRAuthErrorCodeInvalidEmail | E-posta adresinin hatalı biçimlendirildiğini gösterir. |
FIRAuthErrorCodeUserDisabled | Kullanıcının hesabının devre dışı bırakıldığını gösterir. |
FIRAuthErrorCodeWrongPassword | Kullanıcının yanlış bir parola ile oturum açmayı denediğini gösterir. |
signInWithCredential:tamamlama:
kod | Anlam |
---|
FIRAuthErrorCodeInvalidCredential | Sağlanan kimlik bilgisinin geçersiz olduğunu gösterir. Bu, süresi dolmuşsa veya hatalı biçimlendirilmişse olabilir. |
FIRAuthErrorCodeInvalidEmail | Kimlik bilgisi EmailPasswordAuthCredential , e-posta adresinin hatalı biçimlendirildiğini gösterir. |
FIRAuthErrorCodeOperationNotAllowed | Kimlik bilgisi tarafından temsil edilen kimlik sağlayıcıya sahip hesapların etkinleştirilmediğini gösterir. Bunları Firebase konsolunun Yetkilendirme bölümünde etkinleştirin. |
FIRAuthErrorCodeEmailAlreadyInUse | Kimlik bilgisi tarafından onaylanan e-postanın (örneğin bir Facebook erişim belirtecindeki e-posta), bu oturum açma yöntemiyle kimliği doğrulanamayan mevcut bir hesap tarafından zaten kullanıldığını gösterir. Bu kullanıcının e-postası için fetchProvidersForEmail 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ştirilirse atılır. |
FIRAuthErrorCodeUserDisabled | Kullanıcının hesabının devre dışı bırakıldığını gösterir. |
FIRAuthErrorCodeWrongPassword | Kimlik bilgisi EmailPasswordAuthCredential , kullanıcının yanlış bir parolayla oturum açmaya çalıştığını gösterir. |
SignInAnonymouslyWithCompletion:
signInWithCustomToken:tamamlama:
kod | Anlam |
---|
FIRAuthErrorCodeInvalidCustomToken | Özel belirteçle ilgili bir doğrulama hatasını gösterir. |
FIRAuthErrorCodeCustomTokenMismatch | Hizmet hesabını ve API anahtarının farklı projelere ait olduğunu gösterir. |
createUserWithEmail:parola:tamamlama:
kod | Anlam |
---|
FIRAuthErrorCodeInvalidEmail | E-posta adresinin hatalı biçimlendirildiğini gösterir. |
FIRAuthErrorCodeEmailAlreadyInUse | Kaydolmayı denemek için kullanılan e-postanın zaten var olduğunu gösterir. Bu kullanıcının hangi oturum açma mekanizmalarını kullandığını kontrol etmek için fetchProvidersForEmail arayın ve kullanıcıdan bunlardan biriyle oturum açmasını isteyin. |
FIRAuthErrorCodeOperationNotAllowed | E-posta ve parola hesaplarının etkinleştirilmediğini gösterir. Bunları Firebase konsolunun Kimlik Doğrulama bölümünde etkinleştirin. |
FIRAuthErrorCodeWeakPassword | Çok zayıf olarak kabul edilen bir parola belirleme girişimini belirtir. NSError.userInfo sözlük nesnesindeki NSLocalizedFailureReasonErrorKey alanı, kullanıcıya gösterilebilecek daha ayrıntılı açıklama içerecektir. |
oturumu Kapat:
kod | Anlam |
---|
FIRAuthErrorCodeKeychainError | Anahtarlığa erişirken bir hata oluştuğunu belirtti. NSError.userInfo sözlüğündeki NSLocalizedFailureReasonErrorKey ve NSUnderlyingErrorKey alanları, karşılaşılan hata hakkında daha fazla bilgi içerecektir. |
FIRUser
FIRUser işlemleri için yaygın hatalar
kod | Anlam |
---|
FIRAuthErrorCodeInvalidUserToken | Oturum açmış kullanıcının oturum bilgilerini tutan yenileme belirtecinin geçersiz olduğunu gösterir. Kullanıcıdan bu cihazda tekrar oturum açmasını istemeniz gerekir. |
FIRAuthErrorCodeUserDisabled | Kullanıcı hesabının devre dışı bırakıldığını ve Firebase konsolundaki Kullanıcılar panelinden yeniden etkinleştirilene kadar artık kullanılamayacağını belirtir. |
reauthenticateWithCredential:tamamlama:
kod | Anlam |
---|
FIRAuthErrorCodeInvalidCredential | Sağlanan kimlik bilgisinin geçersiz olduğunu gösterir. Bu, süresi dolmuşsa veya hatalı biçimlendirilmişse olabilir. |
FIRAuthErrorCodeInvalidEmail | Kimlik bilgisi EmailPasswordAuthCredential , e-posta adresinin hatalı biçimlendirildiğini gösterir. |
FIRAuthErrorCodeWrongPassword | Kimlik bilgisi EmailPasswordAuthCredential , kullanıcının yanlış bir parolayla yeniden kimlik doğrulama girişiminde bulunduğunu gösterir. |
FIRAuthErrorCodeUserMismatch | Geçerli kullanıcı olmayan bir kullanıcıyla yeniden kimlik doğrulama girişiminde bulunulduğunu gösterir. |
FIRAuthErrorCodeOperationNotAllowed | Kimlik bilgisi tarafından temsil edilen kimlik sağlayıcıya sahip hesapların etkinleştirilmediğini gösterir. Bunları Firebase konsolunun Yetkilendirme bölümünde etkinleştirin. |
FIRAuthErrorCodeEmailAlreadyInUse | Kimlik bilgisi tarafından onaylanan e-postanın (örneğin bir Facebook erişim belirtecindeki e-posta), bu oturum açma yöntemiyle yeniden doğrulanamayan mevcut bir hesap tarafından zaten kullanıldığını gösterir. Bu kullanıcının e-postası için fetchProvidersForEmail 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ştirilirse atılır. |
FIRAuthErrorCodeUserDisabled | Kullanıcının hesabının devre dışı bırakıldığını gösterir. |
updateEmail:tamamlama:
kod | Anlam |
---|
FIRAuthErrorCodeEmailAlreadyInUse | E-postanın zaten başka bir hesap tarafından kullanıldığını gösterir. |
FIRAuthErrorCodeInvalidEmail | E-posta adresinin hatalı biçimlendirildiğini gösterir. |
FIRAuthErrorCodeRequiresRecentLogin | Bir kullanıcının e-postasını güncellemek, kullanıcının yakın zamanda oturum açması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. Çözümlemek için, FIRUser üzerinde reauthenticateWithCredential:completion: öğesini çağırarak kullanıcının kimliğini yeniden doğrulayın. |
güncellemeParolası:tamamlama:
kod | Anlam |
---|
FIRAuthErrorCodeOperationNotAllowed | Yöneticinin belirtilen kimlik sağlayıcıyla oturum açmayı devre dışı bıraktığını gösterir. |
FIRAuthErrorCodeRequiresRecentLogin | Bir kullanıcının parolasını güncellemek, kullanıcının yakın zamanda oturum açması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. Çözümlemek için, FIRUser üzerinde reauthenticateWithCredential:completion: öğesini çağırarak kullanıcının kimliğini yeniden doğrulayın. |
FIRAuthErrorCodeWeakPassword | Çok zayıf olarak kabul edilen bir parola belirleme girişimini belirtir. NSError.userInfo sözlük nesnesindeki NSLocalizedFailureReasonErrorKey alanı, kullanıcıya gösterilebilecek daha ayrıntılı açıklama içerecektir. |
linkWithCredential:tamamlama:
kod | Anlam |
---|
FIRAuthErrorCodeProviderAlreadyLinked | Bu hesaba zaten bağlı türde bir sağlayıcı bağlama girişimini gösterir. |
FIRAuthErrorCodeCredentialAlreadyInUse | Halihazırda farklı bir Firebase hesabına bağlanmış olan bir kimlik bilgisi ile bağlantı kurma girişimini gösterir. |
FIRAuthErrorCodeOperationNotAllowed | Kimlik bilgisi tarafından temsil edilen kimlik sağlayıcıya sahip hesapların etkinleştirilmediğini gösterir. Bunları Firebase konsolunun Yetkilendirme bölümünde etkinleştirin. |
Bu yöntem ayrıca FIRUser üzerinde FIRUser
updateEmail:completion:
ve updatePassword:completion:
ile ilişkili hata kodlarını da döndürebilir.
unlinkFromProvider:tamamlama:
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-postanın güncellenmesi, kullanıcının yakın zamanda oturum açması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. Çözümlemek için, FIRUser üzerinde reauthenticateWithCredential:completion: öğesini çağırarak kullanıcının kimliğini yeniden doğrulayın. |
sendEmailVerificationWithCompletion:
kod | Anlam |
---|
FIRAuthErrorCodeUserNotFound | Kullanıcı hesabının bulunamadığını gösterir. |
deleteWithCompletion:
kod | Anlam |
---|
FIRAuthErrorCodeRequiresRecentLogin | Bir kullanıcı hesabını silmek, kullanıcının yakın zamanda oturum açması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. Çözümlemek için, FIRUser üzerinde reauthenticateWithCredential:completion: öğesini çağırarak kullanıcının kimliğini yeniden doğrulayın. |