如何删除Firebase存储目录中的所有文件

问题描述 投票:0回答:1

我有一个如下所示的 Firebase 存储路径。

firebase.storage().ref('temp/test')

“test”文件夹大约有 25-50 个文件。我知道没有办法删除 firebase 中的整个目录,但是有没有办法迭代目录中的所有文件并逐个删除它们?

javascript firebase google-cloud-platform google-cloud-storage firebase-storage
1个回答
6
投票

有没有办法遍历目录中的所有文件并 一一删除?

是的,您可以使用

listAll()
方法,如下:

  const storageRef = firebase.storage().ref('temp');
  storageRef.listAll().then((listResults) => {
    const promises = listResults.items.map((item) => {
      return item.delete();
    });
    Promise.all(promises);
  });

请注意:

  1. 此方法仅适用于 Firebase 规则版本 2(在安全规则顶部添加
    rules_version = '2';
    )。
  2. 这是一个辅助方法,用于重复调用
    list()
    直到没有更多结果。 默认分页大小为1000
© www.soinside.com 2019 - 2024. All rights reserved.