存储器,用于存储图像并使用firebase函数在实时数据库中使用url"/>
Firebase存储器,用于存储图像并使用firebase函数在实时数据库中使用url
[我们具有firebase nodejs函数,可从合作伙伴站点获取base64图像数据。我们将这些数据存储到Firebase存储中,如下所示:
const storageRef = admin.storage().bucket(bucketName)
const fileRef = storageRef.file('myimage.png')
await fileRef.save(base64Image)
这里用于此目的的存储桶具有只读true,因此安全性不是问题。如何获取存储在存储桶中的图像的网址以放入实时数据库?
以UI的方式,我可以直接从Firebase控制台上传图像,并且可以看到链接。我需要此链接。
根据我在google上的研究,由于存储桶的安全性,我认为在服务器端获取下载网址是个问题,您需要获取已过期的signedUrl。就我而言,因为它是公开的,所以我希望有一种获取URL的方法。
一种替代方法是完全绕过存储桶,将base64映像直接存储到实时数据库中,但是由于base64字符串的长度很大,我对此不太满意。理想情况下,我的图像应在几kbs的范围内。
如何处理?
回答如下:您有两个选择:
- 使用具有非常长的到期日期的服务器端生成的签名URL。
- 生成(未到期的)下载URL客户端。
要使用下载URL,您需要:
- 上传时将图像的路径写入数据库。
- 让客户端检测到数据库中存在其图像的下载URL。
- 如果没有下载URL,请让客户端从路径生成下载URL,并将其写入数据库。
更多推荐
Firebase存储器,用于存储图像并使用firebase函数在实时数据库中使用url
发布评论