Firebase 是否可以在本地测试Flask Web App中的Firestore(无需部署网站)

Firebase 是否可以在本地测试Flask Web App中的Firestore(无需部署网站),firebase,google-cloud-firestore,Firebase,Google Cloud Firestore,我正在做一个小项目,数据在一个页面上传到Firestore,在同一个网站的另一个页面上检索。当网站托管在localhost上时,是否可以测试Firestore集成 在localhost上部署网站后尝试访问Firestore功能时,我得到: “google.api_core.exceptions.failedPremission:400云Firestore api不可用于数据存储模式项目。”错误 我能找到的唯一文档是:“ 注: 1.我查看了错误,并仔细检查了我的项目是否处于Firestore模式(

我正在做一个小项目,数据在一个页面上传到Firestore,在同一个网站的另一个页面上检索。当网站托管在localhost上时,是否可以测试Firestore集成

在localhost上部署网站后尝试访问Firestore功能时,我得到:

“google.api_core.exceptions.failedPremission:400云Firestore api不可用于数据存储模式项目。”错误

我能找到的唯一文档是:“

注: 1.我查看了错误,并仔细检查了我的项目是否处于Firestore模式(我从Firebase控制台创建了该项目),然后在我的Flask应用程序中使用以下内容对数据库进行身份验证:

导入firebase\u管理
从firebase_管理员导入凭据
cred=credentials.Certificate(“path/to/serviceAccountKey.json”)
firebase_管理员初始化_应用程序(cred)
如果您对此有任何其他意见,我们将不胜感激

  • 我试着研究模拟器,但大多数文档都说它只用于云功能,而我试着测试简单的操作

  • 感谢您查看此信息。

    错误消息表示您的Cloud Firestore数据库位于。除非从未将任何内容保存到数据库中,否则无法更改模式

    尝试创建新项目,创建新的云Firestore数据库,然后选择本机模式:

    • 在GCP控制台中,它将要求您选择
    • 在Firebase控制台中,它将自动选择本机模式

      • 我发现了这个问题。我使用cred=credentials.Certificate(“path/to/serviceAccountKey.json”)代码和新生成的私钥来验证我的firestore数据库,但是,系统为此使用了旧的$GOOGLE\u应用程序\u凭据

        将其更新为新密钥修复了该问题,是的,我能够在Localhost上测试FLASK应用程序与Firestore的集成:)


        感谢您的回复,对不起,我应该添加更多信息。我已经查看了错误并再次检查了我的数据库是否处于Firestore本机模式(通过Firebase控制台生成)。我使用cred=credentials.Certificate(“path/to/serviceAccountKey.json”)和新生成的密钥来验证应用程序。还有什么我遗漏的吗?找到问题并作为答案发布。您的回复告诉我,可以在localhost上测试Firebase,我再次查看了代码,并测试了一些其他解决问题的方法。非常感谢。
        export GOOGLE_APPLICATION_CREDENTIALS='/Users/..../newkey.json'