טיפול בשגיאות ב-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 הקובץ בלקוח לא תואם לגודל הקובץ שהשרת קיבל. כדאי לנסות להעלות שוב.