当前位置: 首页 > 知识库问答 >
问题:

如何检查文件是否存在于Firebase存储器中?

仉嘉泽
2023-03-14

使用数据库时,您可以执行< code>snapshot.exists()来检查某些数据是否存在。根据文件,没有类似的储存方法。

https://firebase.google.com/docs/reference/js/firebase.storage.Reference

检查某个文件是否存在于Firebase存储中的正确方法是什么?

共有3个答案

萧业
2023-03-14

我相信FB存储API的设置方式是用户只请求存在的文件。

因此,一个不存在的文件将不得不作为一个错误来处理:https://firebase.google.com/docs/storage/web/handle-errors

魏成济
2023-03-14

Firebase添加了一个.存在()方法。另一个人回复并提到了这一点,但他们提供的示例代码是不正确的。我在自己搜索解决方案时发现了这个线程,起初我很困惑,因为我尝试了他们的代码,但它总是返回“文件存在”,即使在文件明显不存在的情况下也是如此。

exists()返回一个包含布尔值的数组。正确的使用方法是检查布尔值,如下所示:

const storageFile = bucket.file('path/to/file.txt');
storageFile
  .exists()
  .then((exists) => {
        if (exists[0]) {
          console.log("File exists");
        } else {
          console.log("File does not exist");
        }
     })

我正在分享这篇文章,这样下一个找到这篇文章的人就可以看到它,并为自己节省一些时间。

庾远航
2023-03-14

您可以使用getDownloadURL,它返回一个promise,这个promise反过来可用于捕获“not found”错误,或者处理文件(如果它存在)。例如:

storageRef.child("file.png").getDownloadURL().then(onResolve, onReject);

function onResolve(foundURL) {
    //stuff
}

function onReject(error) {
    console.log(error.code);
}
 类似资料:
  • 问题内容: 我正在使用Java 7 IO的新功能,实际上我试图接收文件夹的所有xml文件。但这在文件夹不存在时引发异常,如何检查新IO是否存在该文件夹? 问题答案: 使用: 您可以选择传递此方法的值: 还有一种方法:

  • 问题内容: Go的标准库没有专门用于检查文件是否存在的函数(如Python的)。什么是 惯用的 方式做到这一点? 问题答案: 要检查文件是否不存在,等同于Python的文件: 要检查文件是否存在,等效于Python的文件: 编辑:根据最近的评论

  • 问题内容: 在打开文件以Java读取之前,如何检查文件是否存在?(相当于Perl的)。 关于SO的唯一类似问题涉及写入文件,因此使用回答了该问题,这显然不适用于此处。 如果可能的话,我宁愿使用真正的API调用返回,而不是使用“调用API来打开文件并在引发异常时捕获并在文本中检查’无文件’的情况下捕获”,但是我可以接受后者。 问题答案: 使用:

  • Go的标准库没有专门用于检查文件是否存在的功能(如Python的)。

  • 问题内容: 尝试检查我要读取的文件是否存在。 问题答案: 这是另一种方法: 包装的用途和功能: p_DirName in varchar2, – schema object name p_FileName in varchar2 ) return number is l_file_loc bfile; begin l_file_loc := bfilename(upper(p_DirName),

  • 问题内容: 我需要检查远程服务器上是否存在特定文件。使用和不起作用。有什么想法如何快速轻松地做到这一点? 问题答案: 您必须使用CURL