我注意到要使用Firebase存储(Google云端存储),我需要提供一个唯一的文件名来上传文件。
然后,我计划在Firebase实时数据库中保留该存储文件位置(https URL或gs URL)的副本,客户端可以在该数据库中单独阅读和下载
但是,我无法为Firebase存储上的文件提供唯一的文件名。由于多个客户端正在将图像上载到单个Firebase根目录
,因此使用UUID生成器可能会导致我的情况发生冲突这是我的计划。我想知道它是否有用
让我们调用我的firebase root:聊天室,包括键:chatroom_1,chatroom_2 ... chatroom_n
在chatroom_k下我有一个名为" Content"的根,它存储由Firebase唯一生成的Push键来存储内容。每个推送键代表一个内容,但实际内容存储在Firebase存储中,一个名为URL的密钥引用实际内容的URL。只要存储桶层次结构代表chatroom_k,Firebase存储上此内容的文件名是否可以具有相同的随机Push键?
答案 0 :(得分:5)
我不确定存储是否提供push()函数,但建议如下:
请求push()到firebase数据库的随机位置,并使用此键作为名称。
无论如何,您可能还需要将此名称存储到数据库中。
在我的应用程序中,我有一个名为" photos"在那里我存储有关我上传的图像的信息。我首先使用push()来获取新密钥,然后使用此密钥将上传的图像重命名为。
这是你需要的还是我误解了什么?