📜  Firebase:名为“[DEFAULT]”的 Firebase 应用已存在(应用重复应用). - 打字稿(1)

📅  最后修改于: 2023-12-03 15:15:05.163000             🧑  作者: Mango

Firebase:名为“[DEFAULT]”的 Firebase 应用已存在(应用重复应用). - 打字稿

当在使用Firebase时,有时会遇到名为“[DEFAULT]”的Firebase应用已经存在的情况,这是因为在启动Firebase时已经创建了一个默认应用,可能是手动创建或在某些情况下自动创建的。

当您尝试创建一个新的Firebase应用时,Firebase会检测到已有一个名为“[DEFAULT]”的应用存在,因此出现冲突的错误。

要解决这个问题,您可以使用以下代码来判断当前是否已经存在一个默认的Firebase应用:

import firebase_admin
from firebase_admin import credentials, firestore

cred = credentials.Certificate('path/to/serviceAccountCredentials.json')

try:
    app = firebase_admin.get_app()
except ValueError:
    app = firebase_admin.initialize_app(cred)

上述代码首先尝试获取Firebase应用,如果没有找到,则通过提供凭据以初始化新的应用。

或者,在初始化Firebase应用时,您可以为应用指定一个不同的名称。例如,如果您想使用“myapp”作为应用的名称,可以使用以下代码:

import firebase_admin
from firebase_admin import credentials, firestore

cred = credentials.Certificate('path/to/serviceAccountCredentials.json')
app = firebase_admin.initialize_app(cred, name='myapp')

这将创建一个名为“myapp”的Firebase应用,如果您再次运行应用程序时,将不会出现应用程序冲突的错误。

在总结中,存在名为“[DEFAULT]”的Firebase应用的存在可能会导致应用程序冲突的错误。您可以通过判断是否存在默认应用或在初始化时指定不同的应用名称来解决此问题。