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

Firebase数据库URL-配置Firebase

吴宏扬
2023-03-14

我正在尝试将Firebase与我的react应用程序一起使用。

我有一个配置文件如下:

import * as firebase from 'firebase';

const config = {
  apiKey: process.env.FIREBASE_API_KEY,
  authDomain: process.env.FIREBASE_AUTH_DOMAIN,
  databaseURL: process.env.FIREBASE_DB_URL,
  projectId: process.env.FIREBASE_PROJECT_ID,
  storageBucket: process.env.FIREBASE_STORAGE_BUCKET,
  messagingSenderId: process.env.FIREBASE_MESSAGE_ID,
}

if (!firebase.apps.length) {
  firebase.initializeApp(config);
}

const database = firebase.database();
const auth = firebase.auth()

export {firebase, auth, database };

当我尝试此操作时,会出现一个错误,显示:

FIREBASE致命错误:无法确定FIREBASE数据库URL。在调用firebase时,请确保包含databaseURL选项。初始化app()。

我不能理解这个错误,因为我在初始化应用程序的调用中包含了配置。配置包括数据库URL。

如何初始化数据库?

共有3个答案

陶乐生
2023-03-14

不要多次初始化firebase。

https://github.com/firebase/firebase-functions/issues/228

喻元龙
2023-03-14

您不需要在firebase周围使用if语句。初始化EAPP(配置)

  import * as firebase from 'firebase';

  const config = {
    apiKey: process.env.FIREBASE_API_KEY,
    authDomain: process.env.FIREBASE_AUTH_DOMAIN,
    databaseURL: process.env.FIREBASE_DB_URL,
    projectId: process.env.FIREBASE_PROJECT_ID,
    storageBucket: process.env.FIREBASE_STORAGE_BUCKET,
    messagingSenderId: process.env.FIREBASE_MESSAGE_ID,
  }

  firebase.initializeApp(config);

您不需要导出这些对象,一旦初始化应用程序,它就可以在项目中使用,而无需导出。

  const database = firebase.database();
  const auth = firebase.auth()

  export {firebase, auth, database };

时向文
2023-03-14

同样的问题。上下文:Gatsby-Gatsby节点。js

出于某种原因,它不像我的环境数据库url。需要对该值进行硬编码。

    const config = {
      apiKey: process.env.GATSBY_FIREBASE_API_KEY,
      authDomain: process.env.GATSBY_FIREBASE_AUTH_DOMAIN,
      databaseURL: "https://blabla.firebaseio.com",
      projectId: process.env.GATSBY_FIREBASE_PROJECT_ID,
      storageBucket: process.env.GATSBY_FIREBASE_STORAGE_BUCKET,
      messagingSenderId: process.env.GATSBY_FIREBASE_MESSAGING_SENDER_ID
    }

而且奏效了。

赛亚

 类似资料:
  • 我正在尝试在用户登录/登录其个人资料后在firebase中创建一个实时数据库。我做了身份验证火基,它向我表明用户在火库身份验证中。我尝试了很多教程,但没有任何效果。如何连接身份验证和实时数据库以生成用户配置文件。 规则: 用户类: 和UserDetails类: 我在DataSnapshot中删除了一些代码,因为它没有work.What我能做什么?我使用了很多教程,但数据库中没有编写任何内容。我想在

  • 这就是我的设想。我有一个POJO类,我们称之为Car,声明如下: 在那个类中,列表 图片应该包含到我实际上传图片的Firebase存储的链接。由于Firebase函数的异步根,我在这方面遇到了问题。在第一个时刻,pictures列表具有图像的本地路径,因为我不希望用户在完成向Firebase数据库添加记录所需的所有步骤之前上传任何内容。所以,我只保存图像的本地路径。但是,一旦数据保存到云中,我当然

  • 新建数据库 在本地新建一个数据库 demo 打开common/config/main-local.php 修改数据库配置 'components' => [ ... 'db' => [ 'class' => 'yii\db\Connection', 'dsn' => 'mysql:host=localhost;dbna

  • 因为 Canal 是模拟 MySQL slave 的交互协议,伪装自己为 MySQL slave ,向 MySQL master 发送dump 协议,所以需要 MySql 开启 binlog 修改 mysql.cnf 中的配置 [mysqld] log-bin=mysql-bin # 开启 binlog binlog-format=ROW # 选择 ROW 模式 server_id=1 # 配置

  • ThinkCMF5安装后的生成的数据库配置文件在data/conf/database.php; <?php return [ // 数据库类型 'type' => 'mysql', // 服务器地址 'hostname' => 'localhost', // 数据库名 'database' => 'thi

  • ThinkCMF6.0安装后的生成的数据库配置文件在data/config/database.php; <?php /** * 配置文件 */ return [ // 默认使用的数据库连接配置 'default' => env('database.driver', 'mysql'), // 自定义时间查询规则 'time_query_rule'