如何访问存储在环境变量中的Firebase服务帐户



我的.env文件中有firebase服务帐户。主要问题是我无法访问index.js文件中的那些。我已经在stackoverflow中尝试过类似的问题。但这些对我没有帮助。

这是我的index.js:

const express = require("express");
const app = express();
const cors = require("cors");
const { MongoClient } = require("mongodb");
const { ObjectId } = require("mongodb");
const admin = require("firebase-admin");
require("dotenv").config();
const port = process.env.PORT || 5000;
//firebase admin initialization
const serviceAccount = JSON.parse(process.env.FIREBASE_SERVICE_ACCOUNT);
admin.initializeApp({
credential : admin.credential.cert(serviceAccount),
}),
});
//middleware
app.use(cors());
app.use(express.json({ limit: "50mb" }));

发生的错误:

错误图像

.env文件:

env文件

我也遇到了同样的问题。我认为这不是检索环境变量的正确方法。

你可以试着这样检索它-

//firebase admin initialization
const serviceAccount = JSON.parse(process.env.FIREBASE_SERVICE_ACCOUNT);
admin.initializeApp({
credential: admin.credential.cert({
projectId: serviceAccount.project_id,
clientEmail: serviceAccount.client_email,
privateKey: serviceAccount.private_key.replace(/\n/g, "n"),
}),
});

希望它能起作用。

最新更新