基于文件的 Firebase 环境配置
学习如何在 Firebase 中设置和获取环境变量。
环境变量 是由名称-值对组成的变量,用于从代码外部配置应用程序代码中的值。它们可以影响计算机或操作系统上运行进程的行为。
在运行 Cloud Functions 时,我们通常需要包含函数所需的额外配置,例如 API 密钥、客户端密钥等。Firebase SDK for Cloud Functions 提供了内置的环境配置功能,使我们能够轻松地为项目存储和检索此类数据。我们可以选择使用 Firebase CLI 的运行时环境配置,或使用基于文件的配置来管理这些变量。
基于文件的配置
Firebase SDK for Cloud Functions 支持 .env 文件格式,将环境变量加载到 process.env 接口中,我们的应用程序从中读取这些变量。为此,我们必须创建一个包含所需变量的 .env 文件,并将其包含在 Firebase 项目的 functions/ 目录中:
1PLATFORM=Educative 2COURSE=Firebase 3YEAR=2022
此文件中声明的值会在我们运行 Cloud Functions 部署命令时被加载,并可通过 process.env 在 Cloud Functions 代码中访问:
1const functions = require("firebase-functions"); 2 3// 函数响应 "Firebase course on Educative" 4exports.firebaseOnEducative = functions.https.onRequest((request, response) => { 5 response.send(`${process.env.COURSE} course on ${process.env.PLATFORM}`); 6});
注意: 要在 Cloud Functions 中成功使用基于文件的配置,我们必须至少使用
v3.18.0版本的 Cloud Functions 模块和v10.2.0版本的 Firebase CLI。
实践练习
研究下方的小部件,学习如何在 Firebase 中使用基于文件的环境配置:
No configuration found for ID: 2a5177705593fe39e211f1f422127711e344f154f2cd68cf33f26809f1bd6d46
操作步骤
- 运行上方的小部件。
- 查看
.env文件,然后研究index.js文件中高亮的行,了解其使用方式。 - 部署 Cloud Function。
- 部署完成后,复制 Cloud Function 的链接并粘贴到浏览器中。
- 注意输出结果。