我试图GOOGLE_APPLICATION_CREDENTIALS
在 Netlify 上配置环境变量以便使用firebase-admin
,但是如何在那里获取实际的 JSON 文件?
显然我不能将它包含在 git 中。
您可以通过使用环境变量将凭据拼凑在一起来生成管理员凭据证书。
您必须使用 Netlify 的环境机制向 Netlify 运行时提供项目特定的值
然后像这样实例化管理客户端
import admin, { app, AppOptions } from "firebase-admin";
const config: AppOptions = {
credential: admin.credential.cert({
projectId: process.env["FIREBASE_ADMIN_PROJECT_ID"],
clientEmail: process.env["FIREBASE_ADMIN_CLIENT_EMAIL"],
privateKey: process.env["FIREBASE_ADMIN_PRIVATE_KEY"].replace(/\\n/g, "\n"),
}),
// databaseURL: process.env.SVELTE_APP_FIREBASE_DATABASE_URL,
};
let firebaseAdminApp: app.App;
if (!admin.apps.length) {
firebaseAdminApp = admin.initializeApp(config);
} else {
firebaseAdminApp = admin.app();
}
export default firebaseAdminApp;