javascript - 连接到我的 Firebase 数据库时遇到问题 - Node 和 Express

标签 javascript node.js firebase express firebase-realtime-database

总的来说,我仍在学习编程,如果我没有理解的话,很抱歉。

我正在尝试连接到我的 Firebase 数据库,但收到 PERMISSION_DENIED 错误。我的 Firebase 中的数据库设置为测试模式,因此任何人都应该能够访问它。

我还根据 firebase 文档添加了所需的所有 npm 包。

如果我需要提供更多信息,请告诉我。

我不确定我在这里做错了什么。有人知道吗?如有任何帮助,我们将不胜感激。

这是我的模块文件

var express = require('express');
var firebase = require('firebase');

// Initialize Firebase
var config = {
  apiKey: "apikey",
  authDomain: "authdomain",
  databaseURL: "databaseurl",
  storageBucket: "storagebucket"
};

firebase.initializeApp(config);

var db = firebase.database();
var ref = db.ref("/users");

ref.on("value", function(snapshot) {
  console.log(snapshot.val());
}, function (errorObject) {
  console.log("The read failed: " + errorObject.code);
});


var index = require('./routes/index');
app.use('/', index);

module.exports = app;

这是我的routes/index.js

var express = require('express');
var router = express.Router();

/* GET home page. */
router.get('/', function(req, res, next) {
  res.render('index', { title: 'The Title' });
});

module.exports = router;

最佳答案

Asynchronous listeners: Data stored in a Firebase Realtime Database is retrieved by attaching an asynchronous listener to a database reference. The listener is triggered once for the initial state of the data and again anytime the data changes. An event listener may receive several different types of events.

有用的链接 https://firebase.google.com/docs/database/admin/retrieve-data

您需要创建一个与您的数据库路径相对应的引用变量

var ref = db.ref("server/saving-data/fireblog/posts");

然后您将附加一个异步回调来读取引用处的数据

    ref.on("value", function(snapshot) {
      console.log(snapshot.val());
    }, function (errorObject) {
      console.log("The read failed: " + errorObject.code);
    });

我认为您的 PERMISSION_DENIED 问题在于您正在使用

var db = firebase.database();

而不是

var db = admin.database();

关于javascript - 连接到我的 Firebase 数据库时遇到问题 - Node 和 Express,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48179814/

相关文章:

javascript - 尝试从 JSON 响应文本中选取数据

node.js - mongoDB/Node.js 上的重复索引

javascript - 类型错误 : Object(…) is not a function

Firebase SMS 多因素身份验证,error.resolver 未定义

javascript - 将项目迁移到使用 "strict mode"的步骤?

javascript - Material-ui <Table/> 抛出一个 Element 类型无效

javascript - 通过 Node.js 运行子查询时 Oracle SQL 命令未正确结束

javascript - 运行 @hapi/hapi 给出错误 "#meetings = null SyntaxError: Invalid or unexpected token"

javascript - Angular 名称不刷新

javascript - eslint loader (for webpack 2) - 您可能需要一个合适的加载器来处理此文件类型