6

我正在尝试从 firebase firestore 获取图像,同时尝试获取图像下载 url 有这个异常:

W/StorageUtil(10206):请求没有身份验证令牌

(与此错误类似的问题不能解决问题)

尽管我的安全规则允许读写,但我仍然收到此错误。

任何想法这有什么问题?

获取图片网址的代码:

  static Future<dynamic> loadImage(BuildContext context, String image) async {
    return await FirebaseStorage.instance.ref().child(image).getDownloadURL();
  }

调用此 loadImage 函数:

  Future<Widget> getImage(BuildContext context, String imgName) async {
   Image image;
    await FireStorageService.loadImage(context, imgName).then((value) {
    print(value);
    image = Image.network(value.toString(), fit: BoxFit.scaleDown);
    return image;
   });
  }

调用此 getImage 函数:

child: FutureBuilder(
future: getImage(context, "/images/test1.jpg"),
...
)

我的 Firebase 存储规则:

rules_version = '2';
service firebase.storage {
match /images/{imageId} {
  allow read,write;
}
}

存储规则 ss:

在此处输入图像描述

我的firebase商店目前: 我目前的 Firebase 商店

4

2 回答 2

0
  • 导航到 Firebase 控制台

  • 在开发开放存储下的侧边栏中

  • 打开规则选项卡将控制台上的规则替换为以下规则:

     rules_version = '2';
    
     service firebase.storage {
    
       match /b/{bucket}/o {
    
         match /{allPaths=**} {
    
           allow read, write
    
         }
    
       }
    
     }
    

并发布完成

于 2021-06-03T07:50:06.607 回答
0

转到项目设置 -> 应用检查 -> 产品从强制更改存储 -> 未强制 1

于 2022-02-16T15:31:30.130 回答