טיפול בשגיאות ב-Cloud Storage באינטרנט

לפעמים כשמפתחים אפליקציה, דברים לא מסתדרים כמו שתכננו ומתרחשת שגיאה.

אם יש ספק, כדאי לבדוק את הפונקציה לטיפול בשגיאות (או את הפונקציה catch() ל-Promises) ולראות מה כתוב בהודעת השגיאה.

אם בדקתם את הודעת השגיאה ויש לכם Cloud Storage Security Rules שמאפשרים את הפעולה, אבל אתם עדיין מתקשים לפתור את השגיאה, אתם יכולים להיכנס לדף התמיכה ולעדכן אותנו איך נוכל לעזור.

טיפול בהודעות שגיאה

יכולות להיות כמה סיבות לשגיאות, כולל קובץ שלא קיים, למשתמש אין הרשאה לגשת לקובץ הרצוי או שהמשתמש ביטל את העלאת הקובץ.

כדי לאבחן את הבעיה ולטפל בשגיאה בצורה נכונה, הנה רשימה מלאה של כל השגיאות שהלקוח שלנו יציג, ואיך הן קרו.

קוד סיבה
storage/unknown אירעה שגיאה לא ידועה.
storage/object-not-found לא קיים אובייקט בהפניה שצוינה.
storage/bucket-not-found לא הוגדר מאגר (bucket) עבור Cloud Storage
storage/project-not-found לא הוגדר פרויקט עבור Cloud Storage
storage/quota-exceeded חרגת מהמכסה של דלי Cloud Storage. אם אתם משתמשים בתוכנית התמחור Spark, כדאי לשדרג לתוכנית התמחור Blaze עם תשלום לפי שימוש. אם כבר נרשמתם לתוכנית התמחור Blaze, עליכם לפנות לתמיכה של Firebase.

חשוב: החל מ-1 באוקטובר 2025, התוכנית Blaze נדרשת לשימוש ב-Cloud Storage, גם בדלי ברירת מחדל.
storage/unauthenticated המשתמש לא אומת. צריך לבצע אימות ולנסות שוב.
storage/unauthorized למשתמש אין הרשאה לבצע את הפעולה המבוקשת. צריך לבדוק את כללי האבטחה כדי לוודא שהם נכונים.
storage/retry-limit-exceeded מגבלת הזמן המקסימלית לפעולה (העלאה, הורדה, מחיקה וכו') חרגתם מהמיכסה. כדאי לנסות להעלות שוב.
storage/invalid-checksum הקובץ בלקוח לא תואם לסיכום הביקורת (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=&ltTOKEN>
storage/invalid-argument הארגומנט שמועבר אל put() חייב להיות File,‏ Blob או מערך UInt8. הארגומנט שמועבר אל putString() חייב להיות מחרוזת גולמית, Base64 או Base64URL.
storage/no-default-bucket לא הוגדרה קטגוריה במאפיין storageBucket בהגדרות של Firebase.
storage/cannot-slice-blob השגיאה הזו מתרחשת בדרך כלל כשהקובץ המקומי השתנה (נמחק, נשמר מחדש וכו'). אפשר לנסות להעלות שוב אחרי שמוודאים שהקובץ לא השתנה.
storage/server-file-wrong-size הקובץ בלקוח לא תואם לגודל הקובץ שהתקבל בשרת. כדאי לנסות להעלות שוב.