إذا كان معاودة الاتصال بالإكمال على طرق Authentication يتلقى وسيطة NSError
التي
ليس معدومًا، فقد حدث خطأ. للانتقال إلى التعامل المناسب مع الأخطاء
في رمز الإنتاج، تحقق من رمز الخطأ وقارنه بالأخطاء الشائعة
الأخطاء الخاصة بطريقة معينة أدناه.
يمكن حل بعض الأخطاء من خلال إجراءات مستخدم معينة، على سبيل المثال،
يمكن حلّ FIRAuthErrorCodeUserTokenExpired
من خلال تسجيل دخول المستخدم.
مرة أخرى، وFIRAuthErrorCodeWrongPassword
من خلال مطالبة المستخدم بتقديم
كلمة المرور الصحيحة.
باستثناء حالات FIRAuthErrorCodeNetworkError
أو
جارٍ إعادة محاولة تنفيذ عملية فاشلة باستخدام FIRAuthErrorCodeTooManyRequests
فلن تنجح الوسيطات أبدًا. عدم وضع افتراض حول ما إذا كانت العملية أم لا
أصبح تأثيره على جانب الخادم.
عند التدقيق في الأخطاء أو تسجيلها، راجِع قاموس userInfo
.
يحتوي FIRAuthErrorNameKey
على سلسلة اسم خطأ من عدّة منصات يمكن
المستخدم لتحديد الخطأ.
يحتوي NSLocalizedDescriptionKey
على وصف للخطأ. هذا النمط
فهذا وصفه يطبقه المطور وليس المستخدم.
يحتوي NSUnderlyingErrorKey
على الخطأ الأساسي الذي تسبب في حدوث الخطأ في
إذا كان هناك خطأ أساسي.
بالإضافة إلى الحقول الرئيسية المدرجة أعلاه، يمكن أن تكون هناك حقول أخرى في
هو قاموس userInfo
الذي قد يكون مفيدًا عند تشخيص الأخطاء.
رموز الأخطاء الشائعة في جميع طرق واجهة برمجة التطبيقات
الرمز |
المعنى |
FIRAuthErrorCodeNetworkError |
يشير إلى حدوث خطأ في الشبكة أثناء العملية. |
FIRAuthErrorCodeUserNotFound |
يشير إلى عدم العثور على حساب المستخدم. قد يحدث ذلك إذا تم حذف حساب المستخدم. |
FIRAuthErrorCodeUserTokenExpired |
تشير هذه الحالة إلى انتهاء صلاحية الرمز المميّز للمستخدم الحالي، على سبيل المثال، من المحتمل أن يكون المستخدم قد غيّر كلمة مرور الحساب على جهاز آخر. يجب أن تطلب من المستخدم تسجيل الدخول مرة أخرى على هذا الجهاز. |
FIRAuthErrorCodeTooManyRequests |
يشير إلى أنّه قد تم حظر الطلب بعد إجراء عدد غير طبيعي من الطلبات من جهاز المتصل إلى خوادم Firebase Authentication. يُرجى إعادة المحاولة بعد مرور بعض الوقت. |
FIRAuthErrorCodeInvalidAPIKey |
يشير إلى إعداد التطبيق باستخدام مفتاح غير صالح لواجهة برمجة التطبيقات. |
FIRAuthErrorCodeAppNotAuthorized |
يشير إلى أنّ التطبيق غير مصرَّح له باستخدام مصادقة Firebase من خلال مفتاح واجهة برمجة التطبيقات الذي تم توفيره. انتقل إلى وحدة التحكم في واجهة Google API وتحقق ضمن علامة تبويب بيانات الاعتماد من أن مفتاح واجهة برمجة التطبيقات الذي تستخدمه تم إدراج معرّف حزمة تطبيقك في القائمة البيضاء. |
FIRAuthErrorCodeKeychainError |
يشير هذا الرمز إلى حدوث خطأ عند الوصول إلى سلسلة المفاتيح. سيحتوي الحقلان NSLocalizedFailureReasonErrorKey وNSUnderlyingErrorKey في قاموس NSError.userInfo على مزيد من المعلومات حول الخطأ الذي حدث. |
FIRAuthErrorCodeInternalError |
يشير ذلك إلى حدوث خطأ داخلي. يُرجى الإبلاغ عن الخطأ مع كائن NSError بالكامل. |
رموز الخطأ الخاصة بالطريقة
FIRAuth
FetchProvidersForEmail:الإكمال:
الرمز |
المعنى |
FIRAuthErrorCodeInvalidEmail |
يشير إلى كتابة عنوان البريد الإلكتروني بشكل غير صحيح. |
SignInWithEmail:password:complete:
الرمز |
المعنى |
FIRAuthErrorCodeOperationNotAllowed |
يشير إلى عدم تفعيل حسابات البريد الإلكتروني وكلمة المرور. يمكنك تفعيلها في قسم "المصادقة" ضمن وحدة تحكُّم Firebase. |
FIRAuthErrorCodeInvalidEmail |
يشير إلى كتابة عنوان البريد الإلكتروني بشكل غير صحيح. |
FIRAuthErrorCodeUserDisabled |
يشير إلى إيقاف حساب المستخدم. |
FIRAuthErrorCodeWrongPassword |
يشير إلى أنّ المستخدم حاول تسجيل الدخول باستخدام كلمة مرور خاطئة. |
SignInWithCredential:complete:
الرمز |
المعنى |
FIRAuthErrorCodeInvalidCredential |
يشير هذا الرمز إلى أنّ بيانات الاعتماد المقدّمة غير صالحة. وقد يحدث ذلك إذا انتهت صلاحيتها أو إذا كانت مكتوبة بشكل غير صحيح. |
FIRAuthErrorCodeInvalidEmail |
يشير هذا الحقل إلى صياغة عنوان البريد الإلكتروني بطريقة غير صحيحة، إذا كانت بيانات الاعتماد من النوع EmailPasswordAuthCredential . |
FIRAuthErrorCodeOperationNotAllowed |
يشير هذا الرمز إلى أنّه لم يتم تفعيل الحسابات التي يستخدمها موفِّر الهوية الذي تمثّله بيانات الاعتماد. يمكنك تفعيلها في قسم "المصادقة" ضمن وحدة تحكُّم Firebase. |
FIRAuthErrorCodeEmailAlreadyInUse |
يشير هذا الرمز إلى أنّ البريد الإلكتروني الذي تم تأكيده من خلال بيانات الاعتماد (مثل الرسالة الإلكترونية في رمز الدخول إلى Facebook) مُستخدَم من قبل في حساب حالي، ولا يمكن مصادقته باستخدام طريقة تسجيل الدخول هذه. يمكنك الاتصال بالرقم fetchProvidersForEmail للحصول على عنوان البريد الإلكتروني لهذا المستخدم، ثم طلب تسجيل الدخول من خلال أي من مقدّمي خدمة تسجيل الدخول الذين أعادوا تسجيل الدخول. لن يظهر هذا الخطأ إلا إذا كانت الرسالة "حساب واحد لكل عنوان بريد إلكتروني" تم تفعيل الإعداد في وحدة تحكُّم Firebase، ضمن إعدادات Authentication. |
FIRAuthErrorCodeUserDisabled |
يشير إلى إيقاف حساب المستخدم. |
FIRAuthErrorCodeWrongPassword |
يشير هذا الرمز إلى أنّ المستخدم حاول تسجيل الدخول باستخدام كلمة مرور خاطئة، إذا كانت بيانات الاعتماد من النوع EmailPasswordAuthCredential . |
SignInمجهولlyWithcomplete:
الرمز |
المعنى |
FIRAuthErrorCodeOperationNotAllowed |
يشير إلى عدم تفعيل الحسابات المجهولة. يمكنك تفعيلها في قسم "المصادقة" ضمن وحدة تحكُّم Firebase. |
SignInWithCustomToken:complete:
الرمز |
المعنى |
FIRAuthErrorCodeInvalidCustomToken |
يشير هذا الرمز إلى خطأ في عملية التحقّق من الرمز المميّز المخصّص. |
FIRAuthErrorCodeCustomTokenMismatch |
يشير إلى أن حساب الخدمة ومفتاح واجهة برمجة التطبيقات ينتميان إلى مشاريع مختلفة. |
createUserWithEmail:password:complete:
الرمز |
المعنى |
FIRAuthErrorCodeInvalidEmail |
يشير إلى كتابة عنوان البريد الإلكتروني بشكل غير صحيح. |
FIRAuthErrorCodeEmailAlreadyInUse |
يشير إلى أنّ عنوان البريد الإلكتروني المُستخدَم لمحاولة الاشتراك متوفّر حاليًا. يمكنك الاتصال بالرقم fetchProvidersForEmail للتحقّق من آليات تسجيل الدخول التي استخدمها هذا المستخدم، ومطالبة المستخدم بتسجيل الدخول باستخدام إحدى هذه الآليات. |
FIRAuthErrorCodeOperationNotAllowed |
يشير إلى عدم تفعيل حسابات البريد الإلكتروني وكلمة المرور. يمكنك تفعيلها من خلال قسم "Authentication" في وحدة تحكّم "Firebase". |
FIRAuthErrorCodeWeakPassword |
يشير إلى محاولة تعيين كلمة مرور ضعيفة جدًا. سيتضمّن الحقل NSLocalizedFailureReasonErrorKey في كائن قاموس NSError.userInfo شرحًا أكثر تفصيلاً يمكن عرضه للمستخدم. |
تسجيل الخروج:
الرمز |
المعنى |
FIRAuthErrorCodeKeychainError |
تمت الإشارة إلى حدوث خطأ أثناء الوصول إلى سلسلة المفاتيح. سيحتوي الحقلان NSLocalizedFailureReasonErrorKey وNSUnderlyingErrorKey في قاموس NSError.userInfo على مزيد من المعلومات حول الخطأ الذي حدث. |
FIRUser
الأخطاء الشائعة في عمليات FIRUser
الرمز |
المعنى |
FIRAuthErrorCodeInvalidUserToken |
يشير هذا الرمز إلى أنّ الرمز المميّز لإعادة التحميل للمستخدم الذي سجَّل الدخول والذي يحتوي على معلومات الجلسة غير صالح. يجب أن تطلب من المستخدم تسجيل الدخول مرة أخرى على هذا الجهاز. |
FIRAuthErrorCodeUserDisabled |
يشير إلى إيقاف حساب المستخدم ولا يمكن استخدامه بعد الآن إلى أن يتم تفعيله مرة أخرى من داخل لوحة "المستخدمون" في وحدة تحكُّم Firebase. |
إكمال عملية إعادة المصادقة:
الرمز |
المعنى |
FIRAuthErrorCodeInvalidCredential |
يشير هذا الرمز إلى أنّ بيانات الاعتماد المقدّمة غير صالحة. وقد يحدث ذلك إذا انتهت صلاحيتها أو إذا كانت مكتوبة بشكل غير صحيح. |
FIRAuthErrorCodeInvalidEmail |
يشير هذا الحقل إلى صياغة عنوان البريد الإلكتروني بطريقة غير صحيحة، إذا كانت بيانات الاعتماد من النوع EmailPasswordAuthCredential . |
FIRAuthErrorCodeWrongPassword |
يشير هذا الرمز إلى أنّ المستخدم حاول إعادة المصادقة باستخدام كلمة مرور غير صحيحة إذا كانت بيانات الاعتماد من النوع EmailPasswordAuthCredential . |
FIRAuthErrorCodeUserMismatch |
يشير إلى أنّه تم إجراء محاولة لإعادة المصادقة مع مستخدم ليس المستخدم الحالي. |
FIRAuthErrorCodeOperationNotAllowed |
يشير هذا الرمز إلى أنّه لم يتم تفعيل الحسابات التي يستخدمها موفِّر الهوية الذي تمثّله بيانات الاعتماد. يمكنك تفعيلها في قسم "المصادقة" ضمن وحدة تحكُّم Firebase. |
FIRAuthErrorCodeEmailAlreadyInUse |
يشير هذا الرمز إلى أنّ البريد الإلكتروني الذي تم تأكيده من خلال بيانات الاعتماد (مثل الرسالة الإلكترونية في رمز الدخول إلى Facebook) مُستخدَم حاليًا في حساب حالي، ولا يمكن إعادة المصادقة عليه باستخدام طريقة تسجيل الدخول هذه. يمكنك الاتصال بالرقم fetchProvidersForEmail للحصول على عنوان البريد الإلكتروني لهذا المستخدم، ثم طلب تسجيل الدخول من خلال أي من مقدّمي خدمة تسجيل الدخول الذين أعادوا تسجيل الدخول. لن يظهر هذا الخطأ إلا إذا كانت الرسالة "حساب واحد لكل عنوان بريد إلكتروني" تم تفعيل الإعداد في وحدة تحكُّم Firebase، ضمن إعدادات Authentication. |
FIRAuthErrorCodeUserDisabled |
يشير إلى إيقاف حساب المستخدم. |
updateEmail:الإكمال:
الرمز |
المعنى |
FIRAuthErrorCodeEmailAlreadyInUse |
يشير إلى أن البريد الإلكتروني قيد الاستخدام بواسطة حساب آخر. |
FIRAuthErrorCodeInvalidEmail |
يشير إلى كتابة عنوان البريد الإلكتروني بشكل غير صحيح. |
FIRAuthErrorCodeRequiresRecentLogin |
إنّ تعديل عنوان البريد الإلكتروني للمستخدم هو عملية حسّاسة للأمان وتتطلّب تسجيل دخول حديث من المستخدم. يشير هذا الخطأ إلى أن المستخدم لم يسجّل الدخول مؤخرًا بالقدر الكافي. لحل المشكلة، يجب إعادة مصادقة المستخدم عن طريق استدعاء reauthenticateWithCredential:completion: على FIRUser . |
UpdatePassword:الإكمال:
الرمز |
المعنى |
FIRAuthErrorCodeOperationNotAllowed |
يشير إلى أنّ المشرف قد أوقف تسجيل الدخول باستخدام موفِّر الهوية المحدَّد. |
FIRAuthErrorCodeRequiresRecentLogin |
إنّ تعديل كلمة مرور المستخدم هو عملية حسّاسة للأمان وتتطلب تسجيل دخول حديث من المستخدم. يشير هذا الخطأ إلى أن المستخدم لم يسجّل الدخول مؤخرًا بالقدر الكافي. لحل المشكلة، يجب إعادة مصادقة المستخدم عن طريق استدعاء reauthenticateWithCredential:completion: على FIRUser . |
FIRAuthErrorCodeWeakPassword |
يشير إلى محاولة تعيين كلمة مرور ضعيفة جدًا. سيتضمّن الحقل NSLocalizedFailureReasonErrorKey في كائن قاموس NSError.userInfo شرحًا أكثر تفصيلاً يمكن عرضه للمستخدم. |
linkWithCredential:الإكمال:
الرمز |
المعنى |
FIRAuthErrorCodeProviderAlreadyLinked |
يشير هذا الحقل إلى محاولة لربط مقدّم خدمة من نوع سبق أن تم ربطه بهذا الحساب. |
FIRAuthErrorCodeCredentialAlreadyInUse |
يشير هذا الحقل إلى محاولة الربط ببيانات اعتماد تم ربطها من قبل بحساب مختلف في Firebase. |
FIRAuthErrorCodeOperationNotAllowed |
يشير هذا الرمز إلى أنّه لم يتم تفعيل الحسابات التي يستخدمها موفِّر الهوية الذي تمثّله بيانات الاعتماد. يمكنك تفعيلها في قسم "المصادقة" ضمن وحدة تحكُّم Firebase. |
قد تعرض هذه الطريقة أيضًا رموز الخطأ المرتبطة بالعنوان updateEmail:completion:
updatePassword:completion:
في FIRUser
.
cancelFromProvider:الإكمال:
الرمز |
المعنى |
FIRAuthErrorCodeNoSuchProvider |
يشير هذا الرمز إلى محاولة إلغاء ربط مقدّم خدمة غير مرتبط بالحساب. |
FIRAuthErrorCodeRequiresRecentLogin |
تُعدّ عملية تحديث البريد الإلكتروني عملية حسّاسة للأمان وتتطلّب تسجيل دخول حديث من المستخدم. يشير هذا الخطأ إلى أن المستخدم لم يسجّل الدخول مؤخرًا بالقدر الكافي. لحل المشكلة، يجب إعادة مصادقة المستخدم عن طريق استدعاء reauthenticateWithCredential:completion: على FIRUser . |
SendEmailVerifyWithComplete:
الرمز |
المعنى |
FIRAuthErrorCodeUserNotFound |
يشير إلى عدم العثور على حساب المستخدم. |
deleteWithcomplete:
الرمز |
المعنى |
FIRAuthErrorCodeRequiresRecentLogin |
يُعد حذف حساب المستخدم عملية حساسة للأمان وتتطلب تسجيل دخول مؤخرًا من المستخدم. يشير هذا الخطأ إلى أن المستخدم لم يسجّل الدخول مؤخرًا بالقدر الكافي. لحل المشكلة، يجب إعادة مصادقة المستخدم عن طريق استدعاء reauthenticateWithCredential:completion: على FIRUser . |