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

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

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

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

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

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

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

קוד סיבה
storage/unknown אירעה שגיאה לא ידועה.
storage/object-not-found אין אובייקט בהפניה שצוינה.
storage/bucket-not-found לא הוגדר קטגוריה ל-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 הקובץ בצד הלקוח לא תואם לסיכום הביקורת של הקובץ שהשרת קיבל. כדאי לנסות להעלות שוב.
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 הקובץ אצל הלקוח לא תואם לגודל הקובץ שהתקבל בשרת. כדאי לנסות להעלות שוב.