Flutter'da Cloud Storage hatalarını işleme
Koleksiyonlar ile düzeninizi koruyun
İçeriği tercihlerinize göre kaydedin ve kategorilere ayırın.
Bazen uygulama geliştirirken işler planlandığı gibi gitmez ve hata oluşur.
Şüphe duyduğunuzda, işlev tarafından oluşturulan istisnayı yakalayın
ve hata mesajının ne söylediğine bakın.
final storageRef = FirebaseStorage.instance.ref().child("files/uid");
try {
final listResult = await storageRef.listAll();
} on FirebaseException catch (e) {
// Caught an exception from Firebase.
print("Failed with error '${e.code}': ${e.message}");
}
Hata Mesajlarını İşleme
Hataların oluşmasının çeşitli nedenleri vardır. Örneğin, dosya mevcut olmayabilir, kullanıcının istenen dosyaya erişme izni olmayabilir veya kullanıcı dosya yüklemeyi iptal etmiş olabilir.
Sorunu doğru şekilde teşhis etmek ve hatayı gidermek için müşterimizin bildireceği tüm hataların ve bu hataların nasıl oluştuğunun tam listesini aşağıda bulabilirsiniz.
Kod |
Açıklama |
storage/unknown |
Bilinmeyen bir hata oluştu. |
storage/object-not-found |
İstenen referansta nesne yok. |
storage/bucket-not-found |
Cloud Storage için paket yapılandırılmamış |
storage/project-not-found |
Cloud Storage için proje yapılandırılmamış |
storage/quota-exceeded |
Cloud Storage paketinizdeki kota aşıldı. Spark fiyatlandırma planını kullanıyorsanız kullandıkça öde Blaze fiyatlandırma planına geçmeyi düşünebilirsiniz. Blaze fiyatlandırma planını kullanıyorsanız Firebase Destek Ekibi ile iletişime geçin.
Önemli: 1 Ekim 2025'ten itibaren Cloud Storage (varsayılan paketler dahil) kullanmak için Blaze fiyatlandırma planı gerekli olacak. |
storage/unauthenticated |
Kullanıcının kimliği doğrulanmadı. Lütfen kimlik doğrulama işlemini yapıp tekrar deneyin. |
storage/unauthorized |
Kullanıcının istenen işlemi gerçekleştirme yetkisi yok. Güvenlik kurallarınızın doğru olduğundan emin olmak için bunları kontrol edin. |
storage/retry-limit-exceeded |
Bir işlemle (yükleme, indirme, silme vb.) ilgili maksimum süre sınırı aşıldı. Tekrar yüklemeyi deneyin. |
storage/invalid-checksum |
İstemcideki dosya, sunucu tarafından alınan dosyanın sağlama toplamıyla eşleşmiyor. Tekrar yüklemeyi deneyin. |
storage/canceled |
Kullanıcı, işlemi iptal etti. |
storage/invalid-event-name |
Geçersiz etkinlik adı sağlandı. [running , progress , pause ] değerlerinden biri olmalıdır. |
storage/invalid-url |
refFromURL() için geçersiz URL sağlandı. gs://bucket/object veya https://firebasestorage.googleapis.com/v0/b/bucket/o/object?token=<TOKEN> biçiminde olmalıdır. |
storage/invalid-argument |
put() işlevine iletilen bağımsız değişken File , Blob veya UInt8 dizisi olmalıdır. putString() işlevine iletilen bağımsız değişken; ham, Base64 veya Base64URL dizesi olmalıdır. |
storage/no-default-bucket |
Yapılandırmanızın storageBucket özelliğinde herhangi bir grup ayarlanmamış. |
storage/cannot-slice-blob |
Genellikle yerel dosya değiştiğinde (silindiğinde, tekrar kaydedildiğinde vb.) oluşur. Dosyanın değişmediğini doğruladıktan sonra tekrar yüklemeyi deneyin. |
storage/server-file-wrong-size |
İstemcideki dosya, sunucu tarafından alınan dosyanın boyutuyla eşleşmiyor. Tekrar yüklemeyi deneyin. |
Aksi belirtilmediği sürece bu sayfanın içeriği Creative Commons Atıf 4.0 Lisansı altında ve kod örnekleri Apache 2.0 Lisansı altında lisanslanmıştır. Ayrıntılı bilgi için Google Developers Site Politikaları'na göz atın. Java, Oracle ve/veya satış ortaklarının tescilli ticari markasıdır.
Son güncelleme tarihi: 2025-07-25 UTC.
[null,null,["Son güncelleme tarihi: 2025-07-25 UTC."],[],[],null,["\u003cbr /\u003e\n\nSometimes when you're building an app, things don't go as planned and an\nerror occurs!\n\nWhen in doubt, catch the exception thrown by the function\nand see what the error message has to say. \n\n final storageRef = FirebaseStorage.instance.ref().child(\"files/uid\");\n try {\n final listResult = await storageRef.listAll();\n } on FirebaseException catch (e) {\n // Caught an exception from Firebase.\n print(\"Failed with error '${e.code}': ${e.message}\");\n }\n\n| **Note:** By default, a Cloud Storage for Firebase bucket requires Firebase Authentication to perform any action on the bucket's data or files. You can change your Firebase Security Rules for Cloud Storage to [allow unauthenticated access for specific situations](/docs/storage/security/rules-conditions#public). However, for most situations, we strongly recommend [restricting access and setting up robust security rules](/docs/storage/security/get-started) (especially for production apps). Note that if you use Google App Engine and have a default Cloud Storage bucket with a name format of `*.appspot.com`, you may need to consider [how your security rules impact access to App Engine files](/docs/storage/gcp-integration#security-rules-and-app-engine-files).\n\nHandle Error Messages\n\nThere are a number of reasons why errors may occur, including the file\nnot existing, the user not having permission to access the desired file, or the\nuser cancelling the file upload.\n\nTo properly diagnose the issue and handle the error, here is a full list of\nall the errors our client will raise, and how they occurred.\n\n| Code | Description |\n|----------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `storage/unknown` | An unknown error occurred. |\n| `storage/object-not-found` | No object exists at the desired reference. |\n| `storage/bucket-not-found` | No bucket is configured for Cloud Storage |\n| `storage/project-not-found` | No project is configured for Cloud Storage |\n| `storage/quota-exceeded` | Quota on your Cloud Storage bucket has been exceeded. If you're on the Spark pricing plan, consider upgrading to the [pay-as-you-go Blaze pricing plan](/pricing). If you're already on the Blaze pricing plan, reach out to Firebase Support. **Important** : Starting October 1, 2025, the [Blaze pricing plan will be *required* to use Cloud Storage](/docs/storage/faqs-storage-changes-announced-sept-2024), even default buckets. |\n| `storage/unauthenticated` | User is unauthenticated, please authenticate and try again. |\n| `storage/unauthorized` | User is not authorized to perform the desired action, check your security rules to ensure they are correct. |\n| `storage/retry-limit-exceeded` | The maximum time limit on an operation (upload, download, delete, etc.) has been excceded. Try uploading again. |\n| `storage/invalid-checksum` | File on the client does not match the checksum of the file received by the server. Try uploading again. |\n| `storage/canceled` | User canceled the operation. |\n| `storage/invalid-event-name` | Invalid event name provided. Must be one of \\[`running`, `progress`, `pause`\\] |\n| `storage/invalid-url` | Invalid URL provided to `refFromURL()`. Must be of the form: `gs://bucket/object` or `https://firebasestorage.googleapis.com/v0/b/bucket/o/object?token=\u003cTOKEN\u003e` |\n| `storage/invalid-argument` | The argument passed to `put()` must be `File`, `Blob`, or `UInt8` Array. The argument passed to `putString()` must be a raw, `Base64`, or `Base64URL` string. |\n| `storage/no-default-bucket` | No bucket has been set in your config's `storageBucket` property. |\n| `storage/cannot-slice-blob` | Commonly occurs when the local file has changed (deleted, saved again, etc.). Try uploading again after verifying that the file hasn't changed. |\n| `storage/server-file-wrong-size` | File on the client does not match the size of the file received by the server. Try uploading again. |"]]