NodeJS 中的 Firebase Admin SDK - 使用

Firebase Admin SDK in NodeJS - Usage

我正在尝试在我的 NodeJS 项目中使用 Firebase Admin SDK 来创建 API。但是我对用法有点困惑。

我安装的包是这样的:

npm install firebase-admin

并且在入口点文件 (index.js) 中,我添加了以下行(使用实际值而不是占位符):

const express = require('express');
const app = express();
const bodyParser = require('body-parser');


//---------- FIREBASE -------------------
var admin = require("firebase-admin");

var serviceAccount = require("path/to/serviceAccountKey.json");

admin.initializeApp({
  credential: admin.credential.cert(serviceAccount),
  databaseURL: "https://myprojectname.firebaseio.com"
});
//---------- /FIREBASE -------------------

//.. my other code goes here.. like middlewares, routes, etc.

我将使用 firebase-admin 来验证我的身份验证控制器(单独的文件)中的令牌。那么我是否必须将 firebase 部分的代码从上面 index.js 移动到我的 auth 控制器文件?

我的意思是我必须在我想使用它的每个文件中要求并初始化 firebase-admin?

主要选项有:

  1. 在您需要的每个文件中导入并初始化 SDK。
  2. 有一个初始化 SDK 的文件。将该文件和 SDK 导入到您需要的每个文件中,但不要再到处初始化它了。
  3. 有一个初始化和导出 SDK 的文件。然后在任何地方导入该文件,并使用其导出的 Firebase 服务。

我最常看到第三种选择,但也经常看到开发人员在出口方面苦苦挣扎。所以你可能想先试试第二个选项。