Bazen işler planlandığı gibi gitmez ve bir hata oluşur.
Şü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'sinde kullanılan çeşitli nesnelere (örneğin, UploadTask
ve FileDownloadTask
) eklenebilir.
Kotlin
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 olmasına rağmen hatayı düzeltmekte zorlanıyorsanız destek sayfamızı ziyaret ederek size nasıl yardımcı olabileceğimizi bildirin.
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şabileceğ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 referansta nesne yok. |
ERROR_BUCKET_NOT_FOUND |
Cloud Storage için yapılandırılmış bir paket yok |
ERROR_PROJECT_NOT_FOUND |
Cloud Storage için yapılandırılmış proje yok |
ERROR_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: |
ERROR_NOT_AUTHENTICATED |
Kullanıcının kimliği doğrulanmadı. Lütfen kimlik doğrulama işlemini yapıp tekrar deneyin. |
ERROR_NOT_AUTHORIZED |
Kullanıcının istenen işlemi gerçekleştirme yetkisi yok. Kurallarınızın doğru olduğundan emin olmak için bunları kontrol edin. |
ERROR_RETRY_LIMIT_EXCEEDED |
Bir işlemle (yükleme, indirme, silme vb.) ilgili maksimum süre sınırı 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.