Parfois, lorsque vous créez une application, les choses ne se passent pas comme prévu et une erreur se produit.
En cas de doute, interceptez l'exception générée par la fonction et consultez le message d'erreur.
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}");
}
Gérer les messages d'erreur
Plusieurs raisons peuvent expliquer la survenue d'erreurs, y compris l'inexistence du fichier, le manque d'autorisation de l'utilisateur pour accéder au fichier souhaité ou l'annulation de l'importation du fichier par l'utilisateur.
Pour diagnostiquer correctement le problème et gérer l'erreur, voici la liste complète de toutes les erreurs que notre client générera, ainsi que la manière dont elles se sont produites.
| Code | Description |
|---|---|
storage/unknown |
Une erreur inconnue s'est produite. |
storage/object-not-found |
Aucun objet n'existe à la référence souhaitée. |
storage/bucket-not-found |
Aucun bucket n'est configuré pour Cloud Storage. |
storage/project-not-found |
Aucun projet n'est configuré pour Cloud Storage. |
storage/quota-exceeded |
Le quota de votre bucket a été dépassé. Cloud Storage for Firebase nécessite le forfait Blaze avec paiement à l'usage . Si vous recevez cette erreur sur un projet associé au forfait Spark, vous devez passer au forfait Blaze pour retrouver l'accès. Pour en savoir plus, consultez les questions fréquentes. |
storage/unauthenticated |
L'utilisateur n'est pas authentifié. Veuillez vous authentifier et réessayer. |
storage/unauthorized |
L'utilisateur n'est pas autorisé à effectuer l'action souhaitée. Vérifiez vos règles de sécurité pour vous assurer qu'elles sont correctes. |
storage/retry-limit-exceeded |
Le délai maximal d'une opération (importation, téléchargement, suppression, etc.) a été dépassé. Réessayez d'importer une vidéo. |
storage/invalid-checksum |
Le fichier sur le client ne correspond pas à la somme de contrôle du fichier reçu par le serveur. Réessayez d'importer une vidéo. |
storage/canceled |
L'utilisateur a annulé l'opération. |
storage/invalid-event-name |
Nom d'événement non valide fourni. Doit être l'un des suivants : [running, progress, pause] |
storage/invalid-url |
URL non valide fournie à refFromURL(). Doit être au format suivant : gs://bucket/object ou https://firebasestorage.googleapis.com/v0/b/bucket/o/object?token=<TOKEN> |
storage/invalid-argument |
L'argument transmis à put() doit être un tableau File, Blob ou UInt8. L'argument transmis à putString() doit être une chaîne brute, Base64 ou Base64URL. |
storage/no-default-bucket |
Aucun bucket n'a été défini dans la propriété storageBucket de votre configuration. |
storage/cannot-slice-blob |
Se produit généralement lorsque le fichier local a été modifié (supprimé, enregistré à nouveau, etc.). Réessayez d'importer une vidéo après avoir vérifié que le fichier n'a pas été modifié. |
storage/server-file-wrong-size |
Le fichier sur le client ne correspond pas à la taille du fichier reçu par le serveur. Réessayez d'importer une vidéo. |