Czasami podczas tworzenia aplikacji coś idzie nie tak i występuje błąd.
W razie wątpliwości przechwyć wyjątek wygenerowany przez funkcję i sprawdź, co mówi komunikat o błędzie.
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}");
}
Obsługa komunikatów o błędach
Błędy mogą wystąpić z różnych powodów, m.in. gdy plik nie istnieje, użytkownik nie ma uprawnień do dostępu do wybranego pliku lub użytkownik anulował przesyłanie pliku.
Aby prawidłowo zdiagnozować problem i rozwiązać błąd, przedstawiamy pełną listę wszystkich błędów, które może zgłosić nasz klient, oraz sposobów ich wystąpienia.
Kod | Opis |
---|---|
storage/unknown |
Wystąpił nieznany błąd. |
storage/object-not-found |
W przypadku wybranego odwołania nie ma żadnego obiektu. |
storage/bucket-not-found |
Nie skonfigurowano zasobnika dla Cloud Storage |
storage/project-not-found |
Brak skonfigurowanego projektu w Cloud Storage |
storage/quota-exceeded |
Limit w przypadku puli Cloud Storage został przekroczony. Jeśli korzystasz z abonamentu Spark, rozważ przejście na abonament Blaze z płatnością za korzystanie. Jeśli masz już abonament Blaze, skontaktuj się z zespołem pomocy Firebase. Ważne: od |
storage/unauthenticated |
Użytkownik nie jest uwierzytelniony. Uwierzytelnij się i spróbuj ponownie. |
storage/unauthorized |
Użytkownik nie ma uprawnień do wykonania żądanego działania. Sprawdź, czy reguły zabezpieczeń są prawidłowe. |
storage/retry-limit-exceeded |
Maksymalny limit czasu operacji (przesyłanie, pobieranie, usuwanie itp.) został przekroczony. Spróbuj przesłać jeszcze raz. |
storage/invalid-checksum |
Plik na kliencie nie jest zgodny z sumą kontrolną pliku otrzymanego przez serwer. Spróbuj przesłać jeszcze raz. |
storage/canceled |
Operacja została anulowana przez użytkownika. |
storage/invalid-event-name |
Podano nieprawidłową nazwę zdarzenia. Wymagana jest jedna z wartości: [running , progress , pause ] |
storage/invalid-url |
Podany adres URL jest nieprawidłowy.refFromURL() Musi mieć format: gs://bucket/object lub https://firebasestorage.googleapis.com/v0/b/bucket/o/object?token=<TOKEN> |
storage/invalid-argument |
Argument przekazany funkcji put() musi być tablicą File , Blob lub UInt8 . Argument przekazany do funkcji putString() musi być ciągiem znaków w formie zwykłej, Base64 lub Base64URL . |
storage/no-default-bucket |
W ustawieniu storageBucket w konfiguracji nie został określony żaden zasobnik. |
storage/cannot-slice-blob |
Zwykle dzieje się tak, gdy plik lokalny uległ zmianie (usunięto, zapisano ponownie itp.). Spróbuj przesłać go ponownie, gdy upewnisz się, że plik nie został zmieniony. |
storage/server-file-wrong-size |
Plik na kliencie ma inny rozmiar niż plik otrzymany przez serwer. Spróbuj przesłać jeszcze raz. |