gpt4 book ai didi

javascript - NativeFirebaseError : [storage/unauthorized] User is not authorized to perform the desired action

转载 作者:行者123 更新时间:2023-12-04 14:45:35 27 4
gpt4 key购买 nike

我在将图片上传到 Firebase 存储时遇到问题。我正在使用 React Native 的 @react-native-firebase/storage 并且安装和连接似乎很好,因为我能够很好地引用图像:

const ref = firebase.storage().ref('myImage.png');

问题绝对是基于权限的,因为当我暂时删除时:
: if request.auth != null

来自 Firebase 控制台存储规则:
rules_version = '2';
service firebase.storage {
match /b/{bucket}/o {
match /{allPaths=**} {
allow read, write: if request.auth != null;
}
}
}

这工作得很好:
firebase.storage()
.ref('images/test.jpg')
.putFile(myImage[0].path)
.then((successCb) => {
console.log('successCb');
console.log(successCb);
})
.catch((failureCb) => {
console.log('failureCb');
console.log(failureCb);
});

那么如何进行身份验证以安全地使用 putFile 呢?

编辑:
我正在使用“@react-native-firebase/storage”:“^6.2.0”

提前致谢!

最佳答案

就是这样弗兰克!
我错误地认为该应用程序是已经通过 GoogleService-Info.plist 文件进行身份验证的用户,而不是该应用程序的用户需要进行身份验证。
我的修复步骤:

  • 安装@react-native-firebase/auth
  • 进入 Firebase 控制台的身份验证部分并启用匿名登录方法
  • 在 componentDidMount() 中调用 firebase.auth().signInAnonymously()
    并且...终于能够成功提交 putFile 到存储!

  • 非常感谢@FrankvanPuffelen !!

    关于javascript - NativeFirebaseError : [storage/unauthorized] User is not authorized to perform the desired action,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59578741/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com