微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Firebase DB和Express

如何解决Firebase DB和Express

我正在尝试连接Firebase数据,以类似于data.json文件的方式进行表达-我这样做是否正确?

我收到“警告,缺少FIREBASE_CONfig和GCLOUD_PROJECT环境变量。初始化firebase-admin将失败”错误,我不确定如何解决-我还发现了一篇似乎可以访问Firebase的文章全部在前端,所以也许我不需要使用express?

const express = require('express');
const app = express();
const port = process.env.PORT || process.argv[2] || 8080
const bodyParser = require('body-parser');
// const data = require('./data.json');
const cors = require('cors');
const firebase = require('firebase-functions');
const admin = require('firebase-admin');
const config = require('./config');
const db = firebase.initializeApp(config);
const serviceAccount = require('./serviceAccount.json');

require('dotenv').config();

app.use(cors());
app.use(bodyparser.urlencoded({extended: true}));
app.options('*',cors());
app.use(bodyParser.json());

admin.initializeApp({
    credential: admin.credential.cert(serviceAccount),databaseURL: 'https://wheresthespot-f83b8.firebaseio.com'
});

app.get('/locations',(req,res) => {
    res.send(db)
})

app.get('/location/:name',res) => {
    res.send(b)
})

app.post('location',res) => {
    const { id,location,description,morningLight,eveningLight,address,city,region,longitude,latitude,categories,permit } = req.body
    const newLocation = {
        id,permit
    }
    res.json([
        db.locations,newLocation
    ])
    db.locations.push(newLocations);
})

app.listen(port,() => console.log(`We're live on port,${port}`))
module.exports.db = db.database();```

解决方法

为了有效地使用Firebase Admin SDK,您应该以instructions开始。特别是,您将需要弄清楚自己如何initialize the SDK。如果您正在运行自己的节点服务器,则需要提供Firebase项目的凭据,如该文档所示。

由于我们不知道'./config'中的内容,因此我们无法确切看到您正在做什么。该文档建议将环境变量“ GOOGLE_APPLICATION_CREDENTIALS”设置为指向具有您的服务帐户凭据的文件。您将无法将配置用于Web或移动应用程序-必须使用服务帐户。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?