【问题标题】:Flutter Firebase Storage : no auth token for requestFlutter Firebase 存储:请求没有身份验证令牌
【发布时间】:2020-06-26 23:54:10
【问题描述】:

我在使用 Image_Picker 时尝试将图像上传到 Firebase 存储。

当我想将图片(imageFile)上传到 Firebase 存储时

 Future uploadFile() async {
    StorageReference storageReference =
        storage.ref().child('profile/${Path.basename(imageFile.path)}}');

    print('uploading..');
    StorageUploadTask uploadTask = storageReference.putFile(imageFile);

    //waiting for the image to upload
    await uploadTask.onComplete;

    print('File Uploaded');
    storageReference.getDownloadURL().then((fileURL) {
      setState(() {
        imageURL = fileURL;
      });
      print(imageURL);
    });
  }

但是,在上传过程中,出现错误提示我没有身份验证令牌请求。 我之前使用 Firebase Auth 将数据存储到数据库中,并且所有内容都已正确配置(我假设是因为 Firebase 给了我一个 google.json 文件)。

W/NetworkRequest( 5796): no auth token for request

E/StorageUtil( 5796): error getting token java.util.concurrent.TimeoutException: Timed out waiting for Task

我还尝试将存储规则从 read, write if auth != null 更改为 read, write。

【问题讨论】:

    标签: firebase flutter firebase-storage


    【解决方案1】:

    检查您的 Firebase 存储规则。我认为默认选项是只允许经过身份验证的用户。如果这是问题所在,只需将它们更改为最适合您需求的即可。

    【讨论】:

    • 这实际上是我的问题,感谢您的回答
    • @AhmedKhattab 你设置了什么?可以分享一下规则吗?请问我有同样的问题!
    【解决方案2】:

    您是否使用 GoogleSignIn 进行身份验证,您能否为 firebase 提供您的用户身份验证代码?对于我使用以下代码解决的 googlesignin 方法,我遇到了相同的问题“无身份验证令牌请求”。

    final GoogleSignIn googleSignIn = GoogleSignIn();
    FirebaseUser firebaseUser;
    GoogleSignInAccount account = await googleSignIn.signIn();
    final GoogleSignInAuthentication googleAuth = await account.authentication;
    final AuthCredential _cred = GoogleAuthProvider.getCredential(idToken: googleAuth.idToken, accessToken: googleAuth.accessToken);
    final AuthResult _res = await FirebaseAuth.instance.signInWithCredential(_cred);
    firebaseUser = _res.user;
    

    【讨论】:

    • 我认为它不仅适用于谷歌登录......而且适用于所有登录选项!!!
    猜你喜欢
    • 2020-08-18
    • 1970-01-01
    • 2013-10-12
    • 2021-10-25
    • 2021-03-06
    • 2019-03-05
    • 1970-01-01
    • 1970-01-01
    • 2020-12-16
    相关资源
    最近更新 更多