التعامل مع الأخطاء المتعلقة بالتخزين السحابي على الويب

في بعض الأحيان، عندما تقوم بإنشاء تطبيق، لا تسير الأمور كما هو مخطط لها ويحدث خطأ!

عندما تكون في شك، تحقق من معالج الأخطاء (أو وظيفة catch() للوعود)، وشاهد ما تقوله رسالة الخطأ.

إذا قمت بفحص رسالة الخطأ ولديك قواعد أمان التخزين السحابي التي تسمح لك باتخاذ الإجراء، ولكنك لا تزال تواجه صعوبة في حل الخطأ، فتفضل بزيارة صفحة الدعم الخاصة بنا وأخبرنا كيف يمكننا المساعدة.

التعامل مع رسائل الخطأ

هناك عدد من الأسباب لحدوث الأخطاء، بما في ذلك الملف غير موجود، أو عدم حصول المستخدم على إذن للوصول إلى الملف المطلوب، أو قيام المستخدم بإلغاء تحميل الملف.

لتشخيص المشكلة بشكل صحيح ومعالجة الخطأ، إليك قائمة كاملة بجميع الأخطاء التي سيثيرها عميلنا وكيفية حدوثها.

شفرة سبب
storage/unknown حدث خطأ غير معروف.
storage/object-not-found لا يوجد كائن في المرجع المطلوب.
storage/bucket-not-found لم يتم تكوين أي حاوية للتخزين السحابي
storage/project-not-found لم يتم تكوين أي مشروع للتخزين السحابي
storage/quota-exceeded لقد تم تجاوز الحصة المخصصة لحاوية التخزين السحابي الخاصة بك. إذا كنت في المستوى المجاني، قم بالترقية إلى الخطة المدفوعة. إذا كنت تستخدم خطة مدفوعة، فاتصل بدعم Firebase.
storage/unauthenticated لم يتم التحقق من المستخدم، يرجى التحقق والمحاولة مرة أخرى.
storage/unauthorized المستخدم غير مصرح له بتنفيذ الإجراء المطلوب، تحقق من قواعد الأمان الخاصة بك للتأكد من صحتها.
storage/retry-limit-exceeded تم تجاوز الحد الأقصى للوقت المحدد للعملية (التحميل، التنزيل، الحذف، وما إلى ذلك). حاول التحميل مرة أخرى.
storage/invalid-checksum الملف الموجود على العميل لا يتطابق مع المجموع الاختباري للملف الذي يتلقاه الخادم. حاول التحميل مرة أخرى.
storage/canceled ألغى المستخدم العملية.
storage/invalid-event-name تم تقديم اسم حدث غير صالح. يجب أن يكون واحدًا من [ `running` ، `progress` ، `pause` ]
storage/invalid-url تم تقديم عنوان URL غير صالح إلى refFromURL() . يجب أن يكون بالشكل: gs://bucket/object أو https://firebasestorage.googleapis.com/v0/b/bucket/o/object?token=<TOKEN>
storage/invalid-argument يجب أن تكون الوسيطة التي تم تمريرها إلى put() عبارة عن صفيف `File` أو `Blob` أو `UInt8`. يجب أن تكون الوسيطة التي تم تمريرها إلى putString() عبارة عن سلسلة خام أو `Base64` أو `Base64URL`.
storage/no-default-bucket لم يتم تعيين أي حاوية في خاصية storageBucket الخاصة بالتكوين الخاص بك.
storage/cannot-slice-blob يحدث هذا عادةً عند تغيير الملف المحلي (حذفه أو حفظه مرة أخرى وما إلى ذلك). حاول التحميل مرة أخرى بعد التأكد من عدم تغيير الملف.
storage/server-file-wrong-size الملف الموجود على العميل لا يتطابق مع حجم الملف الذي يتلقاه الخادم. حاول التحميل مرة أخرى.