Firebase 云函数 process.env.FIREBASE_CONFIG.projectId 未定义
Firebase cloud function process.env.FIREBASE_CONFIG.projectId is undefined
来自 Firebase 官方云函数文档:
https://firebase.google.com/docs/functions/config-env#automatically_populated_environment_variables
我需要访问 projectId
,所以我正在尝试:
type FirebaseConfigEnv = {
databaseURL: string,
storageBucket: string,
projectId: string
}
export const helloWorld = functions.https.onRequest((request, response) => {
const FIREBASE_CONFIG = process.env.FIREBASE_CONFIG as unknown as FirebaseConfigEnv;
response.send(`FIREBASE_CONFIG.projectId: ${FIREBASE_CONFIG.projectId}`);
});
我在浏览器上得到以下结果:
为什么 process.env.FIREBASE_CONFIG
对象没有在我的运行时环境中正确填充?
process.env.FIREBASE_CONFIG
的值是一个 JSON 字符串。由于字符串没有名为 projectId
的 属性,因此您会得到 undefined
.
要像您期望的那样使用它,您必须首先按照 documentation you linked:
底部所示的方式解析它
const FIREBASE_CONFIG = JSON.parse(process.env.FIREBASE_CONFIG);
const projectId = FIREBASE_CONFIG.projectId;
来自 Firebase 官方云函数文档:
https://firebase.google.com/docs/functions/config-env#automatically_populated_environment_variables
我需要访问 projectId
,所以我正在尝试:
type FirebaseConfigEnv = {
databaseURL: string,
storageBucket: string,
projectId: string
}
export const helloWorld = functions.https.onRequest((request, response) => {
const FIREBASE_CONFIG = process.env.FIREBASE_CONFIG as unknown as FirebaseConfigEnv;
response.send(`FIREBASE_CONFIG.projectId: ${FIREBASE_CONFIG.projectId}`);
});
我在浏览器上得到以下结果:
为什么 process.env.FIREBASE_CONFIG
对象没有在我的运行时环境中正确填充?
process.env.FIREBASE_CONFIG
的值是一个 JSON 字符串。由于字符串没有名为 projectId
的 属性,因此您会得到 undefined
.
要像您期望的那样使用它,您必须首先按照 documentation you linked:
底部所示的方式解析它const FIREBASE_CONFIG = JSON.parse(process.env.FIREBASE_CONFIG);
const projectId = FIREBASE_CONFIG.projectId;