javascript firestore中的数据库突然被删除

lnlaulya  于 2023-08-02  发布在  Java
关注(0)|答案(1)|浏览(99)

我最近实现了一个新功能,并在本地测试了我的应用程序。然而,我遇到了一个问题,我无法从对现有Firestore数据库的请求中收到任何反馈。在进入Firebase项目并访问Firestore时,我发现数据库及其所有现有文档和记录都不再可见。
这个问题对我的系统用户产生了负面影响,因为他们只能进行身份验证,但由于无法操作Firestore中的数据而无法从任何其他功能中受益。此外,它也阻碍了我的项目的进展,因为我无法在这种状态下测试新功能。
在这方面,我正在寻求熟悉这个主题的人的专业知识,以帮助我理解为什么Firestore中的数据库被删除。此外,我非常渴望知道是否有可能恢复数据库沿着所有文件和记录。丢失这些数据不是一种选择,它的恢复至关重要。
我试着联系谷歌,但还没有得到任何反馈。

使用代码段:

firebase.service.ts

async getCustomerProjects(customerId) {
    const querySnapshot = await this.db
      .collection("projects", (ref) =>
        ref.where("customer", "==", customerId)
      )
      .get()
      .toPromise();

    const projects = [];
    querySnapshot.forEach((doc) => {
      const project: any = doc.data();
      project.id = doc.id;
      projects.push(project);
    });

    return projects;
  }

字符串

  • integration.component.ts*
this.customerSubscription = this._storageService
      .getSelectedCustomer()
      .subscribe(async (customer) => {
        this.selectedCustomer = customer;
        if (customer) {
          const customerProjects = await this.firebaseService.getCustomerProjects(customer.id);
          this.showContent = false;
          if (customerProjects.length > 0) {
            this.showSelectProject = true;
            this.showCustomerHasNoProject = false;
            this.showProjectHasNoCampaign = false;
          } else {
            this.showSelectProject = false;
            this.showCustomerHasNoProject = true;
            this.showProjectHasNoCampaign = false;
          }
        }
      });

9ceoxa92

9ceoxa921#

Firestore/Firebase永远不会自动删除您的数据库。这不是一个东西。
你应该调查的更可能的原因/事情:

  • 用户无意中删除了应用程序中的文档。
  • 您(或项目的协作者)从控制台删除了文档或集合。
  • 你在代码中犯了一个错误,删除了文档。

过去没有(对于您目前的情况可能仍然没有)任何方法来恢复此类已删除的数据。但是Firestore刚刚在预览版中启动了Point in Time Recovery (PiTR),它(一旦配置)可以保留任何写入/删除的文档的备份副本-然后您可以恢复长达一周。
请注意,所有这些仅适用于数据库中的数据,而不适用于数据库本身。我唯一能想到的是,你的数据库以某种方式进入了一个破碎/标记状态,但你应该在控制台中看到一些指示-或者在浏览器的网络选项卡中看到错误消息。

相关问题