Sah*_*lis 2 javascript firebase firebase-storage
我正在使用Firebase存储,一切都很棒.
如何在不指定名称的情况下上传文件?
因此,文件将获得Firebase的唯一名称,就像它们在存储中一样.
这是我现在使用的一个例子:
firebase.initializeApp(config);
var fileUpload = document.getElementById("uploadFile").files;
var storageRef = firebase.storage().ref(fileUpload[0].name);
var uploadTask = storageRef.put(fileUpload[0]);
Run Code Online (Sandbox Code Playgroud)
我想做这样的事情:
firebase.initializeApp(config);
var fileUpload = document.getElementById("uploadFile").files;
var storageRef = firebase.storage().ref();
var uploadTask = storageRef.put(fileUpload[0]);
Run Code Online (Sandbox Code Playgroud)
感谢您提供的任何帮助.谢谢.
在Firebase存储中没有为您生成文件名的内置API.
但与Firebase数据库的功能类似,您可以轻松生成文件名客户端,在统计上保证其唯一性.
一种方法是生成UUID,例如使用guid()此答案中的函数:
var storageRef = firebase.storage().ref(guid());
Run Code Online (Sandbox Code Playgroud)
请注意,您在这里丢失了文件扩展名,这就是Firebase Storage确定文件类型的方式.因此,您更有可能希望根据本地文件名确定文件名,然后使用之前的内容确定文件名,以使其唯一.
var storageRef = firebase.storage().ref(guid()+fileUpload[0].name);
Run Code Online (Sandbox Code Playgroud)
鉴于这种组合,只有前缀本地时间戳的机会很有可能是唯一的:
var storageRef = firebase.storage().ref(Date.now()+fileUpload[0].name);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
815 次 |
| 最近记录: |