Bazen işler planlandığı gibi gitmez ve hata meydana gelir.
Şüphe duyduğunuzda döndürülen hatayı kontrol edin ve hata mesajının ne söylediğine bakın.
Aşağıdaki kod, Cloud Storage tarafından döndürülen hata kodunu ve hata mesajını inceleyen özel bir hata işleyici uygulamasını gösterir. Bu tür hata işleyiciler, Cloud Storage API'de kullanılan çeşitli nesnelere (ör. UploadTask
ve FileDownloadTask
) eklenebilir.
Kotlin+KTX
internal inner class MyFailureListener : OnFailureListener { override fun onFailure(exception: Exception) { val errorCode = (exception as StorageException).errorCode val errorMessage = exception.message // test the errorCode and errorMessage, and handle accordingly } }
Java
class MyFailureListener implements OnFailureListener { @Override public void onFailure(@NonNull Exception exception) { int errorCode = ((StorageException) exception).getErrorCode(); String errorMessage = exception.getMessage(); // test the errorCode and errorMessage, and handle accordingly } }
Hata mesajını kontrol ettiyseniz ve işleminize izin veren Cloud Storage Security Rules'ye sahipseniz ancak hatayı düzeltmekte hâlâ sorun yaşıyorsanız Destek sayfamızı ziyaret edin ve size nasıl yardımcı olabileceğimizi bildirin.
Hata mesajlarını işleme
Dosyanın mevcut olmaması, kullanıcının istediği dosyaya erişme izninin olmaması veya kullanıcının dosya yüklemeyi iptal etmesi gibi çeşitli nedenlerle hata oluşabilir.
Sorunu doğru şekilde teşhis etmek ve hatayı gidermek için müşterimizin oluşturacağı tüm hataların ve bunların nasıl ortaya çıkabileceğinin tam listesini aşağıda bulabilirsiniz. Bu tablodaki hata kodları, StorageException
sınıfında tam sayı sabitleri olarak tanımlanır.
Kod | Neden |
---|---|
ERROR_UNKNOWN |
Bilinmeyen bir hata oluştu. |
ERROR_OBJECT_NOT_FOUND |
Belirtilen referanstaki nesne yok. |
ERROR_BUCKET_NOT_FOUND |
Cloud Storage için yapılandırılmış paket yok |
ERROR_PROJECT_NOT_FOUND |
Cloud Storage için yapılandırılan proje yok |
ERROR_QUOTA_EXCEEDED |
Cloud Storage paketinizdeki kota aşıldı. Spark fiyatlandırma planını kullanıyorsanız kullan-öde Blaze fiyatlandırma planına geçiş yapabilirsiniz. Halihazırda Blaze fiyatlandırma planını kullanıyorsanız Firebase Destek Ekibi ile iletişime geçin. Önemli: |
ERROR_NOT_AUTHENTICATED |
Kullanıcının kimliği doğrulanmadı. Lütfen kimliğinizi doğrulayın ve tekrar deneyin. |
ERROR_NOT_AUTHORIZED |
Kullanıcı, istenen işlemi gerçekleştirme yetkisine sahip değil. Kurallarınızın doğru olduğundan emin olmak için kontrol edin. |
ERROR_RETRY_LIMIT_EXCEEDED |
Bir işlemle (yükleme, indirme, silme vb.) ilgili maksimum süre aşıldı. Tekrar deneyin. |
ERROR_INVALID_CHECKSUM |
İstemcideki dosya, sunucu tarafından alınan dosyanın sağlama toplamıyla eşleşmiyor. Tekrar yüklemeyi deneyin. |
ERROR_CANCELED |
Kullanıcı, işlemi iptal etti. |
Ayrıca, getReferenceFromUrl()
işlevini geçersiz bir URL ile çağırmaya çalışmak IllegalArgumentException
hatasının oluşmasına neden olur. Yukarıdaki yöntemin bağımsız değişkeni gs://bucket/object
veya https://firebasestorage.googleapis.com/v0/b/bucket/o/object?token=<TOKEN>
biçiminde olmalıdır.