[英]When I upload a image firebase storage getdownloadUrl() put download url In Firestore Collections but not set it in React JS
[英]Firebase getDownloadURL error "User canceled the upload/download"
我有以下代码来获取存储在 firebase 存储中的图像 url。
const firebase = require('firebase');
require('firebase/storage');
firebase.initializeApp(conf);
const firebaseRef = firebase.storage().ref(path);
firebaseRef.getStorage().getDownloadURL().then(url => {
console.log(url);
}).catch(function (error) {
console.log(error);
});
当我尝试运行它(使用正确的路径)时,它总是以错误结束:
FirebaseStorageError {
code_: 'storage/canceled',
message_: 'Firebase Storage: User canceled the upload/download.',
serverResponse_: null,
name_: 'FirebaseError'
}
我有这个存储规则:
rules_version = '2';
service firebase.storage {
match /b/{bucket}/o {
match /{allPaths=**} {
allow read, write
// : if request.auth != null;
}
}
}
当我尝试使用 nodejs api 上传或删除某些文件时,效果很好,但在获取一个文件的 url 时,它总是返回相同的错误。
我试图找到可能导致此问题的原因,但我找不到任何东西: https://firebase.google.com/docs/storage/web/handle-errors
当然,作为用户,我不会取消上传/下载阶段。
先感谢您。
我很确定问题出在调用getStorage()
上,它会返回存储桶的根,您无法在其上生成下载 URL。
如果这是原因,只需从链中删除该调用即可。 所以你最终会得到类似的东西:
const firebaseRef = firebase.storage().ref(path);
firebaseRef.getDownloadURL().then(url => {
console.log(url);
}).catch(function (error) {
console.log(error);
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.