首页 > 解决方案 > 如何使用 firebase 云存储在 firebase 函数中获取 downloadUrl/media url?

问题描述

我正在尝试获取将在图像容器中显示的图像/视频的 URL,以供公众查看的应用程序/网络使用。基本上这些媒体文件存储在 firebase 存储中,我有一个 firestore 文档,其中包含这些文件的路径。

在我获得了 Firestore 中文档的数据后,我还想获得与该文档对应的媒体文件的公共 URL。

我从这里获取文档数据:

querySnapshot.forEach(async (documentSnapshot : any) => {
        let product = await documentSnapshot.data();
        await data.push(product);
      });

我试图做的是以下内容:

 querySnapshot.forEach(async (documentSnapshot : any) => {
        let product = await documentSnapshot.data();
        const picUrlMeta = await storageRef.bucket().file(`${product.picURL}`).getMetadata();
        let product = {...product, picURL: picUrlMeta[0].mediaLink}
        await data.push(product);
      });

问题是,当我尝试访问媒体的结果链接时,浏览器会出现访问错误。

标签: firebasegoogle-cloud-firestoregoogle-cloud-functionsfirebase-storage

解决方案


推荐阅读