Fehler für Cloud Storage in Flutter behandeln

Manchmal läuft bei der Entwicklung einer App nicht alles nach Plan und es tritt ein Fehler auf.

Wenn Sie sich nicht sicher sind, fangen Sie die von der Funktion ausgelöste Ausnahme ab und sehen Sie sich die Fehlermeldung an.

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}");
}

Fehlermeldungen verarbeiten

Es gibt eine Reihe von Gründen, warum Fehler auftreten können, z. B. wenn die Datei nicht vorhanden ist, der Nutzer keine Berechtigung für den Zugriff auf die gewünschte Datei hat oder der Nutzer den Upload der Datei abbricht.

Um das Problem richtig zu diagnostizieren und den Fehler zu beheben, finden Sie hier eine vollständige Liste aller Fehler, die unser Client auslösen kann, und wie sie aufgetreten sind.

Code Beschreibung
storage/unknown Ein unbekannter Fehler ist aufgetreten.
storage/object-not-found Unter der gewünschten Referenz ist kein Objekt vorhanden.
storage/bucket-not-found Für Cloud Storage ist kein Bucket konfiguriert.
storage/project-not-found Für Cloud Storage ist kein Projekt konfiguriert.
storage/quota-exceeded Das Kontingent für Ihren Bucket wurde überschritten. Cloud Storage for Firebase erfordert das Blaze-Preismodell (Pay as you go). Wenn Sie diesen Fehler in einem Projekt mit dem Spark-Preismodell erhalten, müssen Sie auf das Blaze-Preismodell upgraden, um wieder Zugriff zu erhalten. Weitere Informationen finden Sie in unseren FAQs.
storage/unauthenticated Der Nutzer ist nicht authentifiziert. Authentifizieren Sie sich und versuchen Sie es noch einmal.
storage/unauthorized Der Nutzer ist nicht autorisiert, die gewünschte Aktion auszuführen. Prüfen Sie Ihre Sicherheitsregeln, um sicherzustellen, dass sie korrekt sind.
storage/retry-limit-exceeded Das maximale Zeitlimit für einen Vorgang (Upload, Download, Löschen usw.) wurde überschritten. Versuchen Sie noch einmal, die Inhalte hochzuladen.
storage/invalid-checksum Die Datei auf dem Client stimmt nicht mit der Prüfsumme der Datei überein, die vom Server empfangen wurde. Versuchen Sie noch einmal, die Inhalte hochzuladen.
storage/canceled Der Nutzer hat den Vorgang abgebrochen.
storage/invalid-event-name Es wurde ein ungültiger Ereignisname angegeben. Er muss einer der folgenden Werte sein: running, progress, pause.
storage/invalid-url Für refFromURL() wurde eine ungültige URL angegeben. Sie muss das Format: gs://bucket/object oder https://firebasestorage.googleapis.com/v0/b/bucket/o/object?token=<TOKEN> haben.
storage/invalid-argument Das an put() übergebene Argument muss ein File-, Blob- oder UInt8-Array sein. Das an putString() übergebene Argument muss ein Roh-, Base64- oder Base64URL-String sein.
storage/no-default-bucket In der Eigenschaft storageBucket Ihrer Konfiguration wurde kein Bucket festgelegt.
storage/cannot-slice-blob Tritt häufig auf, wenn sich die lokale Datei geändert hat (gelöscht, noch einmal gespeichert usw.). Versuchen Sie noch einmal, die Inhalte hochzuladen, nachdem Sie geprüft haben, dass sich die Datei nicht geändert hat.
storage/server-file-wrong-size Die Datei auf dem Client stimmt nicht mit der Größe der Datei überein, die vom Server empfangen wurde. Versuchen Sie noch einmal, die Inhalte hochzuladen.