Je continue d’obtenir une erreur de message du lien firebase disant 400 erreur avec mon téléchargement de stockage firebase dans mon projet de réaction en essayant de télécharger une photo ... tout fonctionnait bien avant et télécharge les images avec succès, mais maintenant il arrête de télécharger la photo en donnant l’erreur suivante, je ne sais pas où est le problème ...
Le lien qui invite à inspecter
POST https://firebasestorage.googleapis.com/v0/b/xxxxx-****.appspot.com/o?name=usertemp%2F0rdrGK4MRDRptAMCc3mHDveytJv1%2F0rdrGK4MRDRptAMCc3mHDveytJv1.jpg 400 ()
Voici l'erreur de la réponse du lien
{
"error": {
"code": 400,
"message": "Permission denied. Could not access bucket xxxxx-****.appspot.com. Please enable Firebase Storage for your bucket by visiting the Storage tab in the Firebase Console and ensure that you have sufficient permission to properly provision resources."
}
Voici ma sécurité
service firebase.storage {
match /b/{bucket}/o {
match /{allPaths=**} {
allow read, write: if request.auth!=null;
}
}
}
J'ai toujours essayé de changer la match
en /b/xxxxx-****.appspot.com/o
avec toujours pas de succès
Cela est dû à une autorisation manquante. Vous devez vérifier si vous avez
en tant que membre avec un rôle "Storage Admin". Si vous n'en avez pas, ajoutez-le. Cela réglerait le problème.
Voici l'étape sur la façon de vérifier et d'ajouter des autorisations.
Vous pouvez également ajouter l'autorisation manquante dans IAM & Admin si vous le souhaitez.
J'ai remarqué que ce problème se produisait sur des projets pour lesquels les API et services Firebase * n'étaient pas activés sur le tableau de bord de Google App Engine (voir la capture d'écran ci-dessous). J'ai donc activé manuellement les API liées au stockage firebase.
Je ne comprends pas pourquoi certains API et services sont activés automatiquement pour certains projets et pas pour d'autres. Il ne semble pas y avoir d'instructions spécifiques sur les étapes d'intégration Firebase - GCP qui parlent de la nécessité de explicitement activer les API Firebase.
Cet autre SO } _ était utile pour faire la lumière sur cette incohérence apparente.
J'ai eu le même problème. En fait, j’avais hébergé ma page avant d’initialiser le stockage. Ainsi, lors de son initialisation, le compartiment ne correspondait pas. Tout ce que je devais faire était de générer un autre script sur firebase, de le coller dans mon fichier de projet, puis de le déployer à nouveau. Cela a résolu mon problème.