【发布时间】:2021-04-26 23:36:43
【问题描述】:
处理具有 3 个变体的 react 本机应用程序,即开发、暂存和生产。我只有两个火力基地项目。一个用于生产,另一个用于开发和登台
我有一个使用 firebase Admin SDK 的快速服务器。我有兴趣配置服务器以根据请求来自的环境初始化适当的项目。问题是,服务器在收到请求之前不知道要初始化哪个项目。
我正在考虑制作一个自定义中间件并使用从 firebase 配置文件导出的函数,可能类似于...
中间件:
const {initAdminByEnvironment} = require('./config')
module.exports = function(req, res, next) {
const requestorEnvironment = req.header('Requesting-Environment')
initAdminByEnvironment(requestorEnvironment)
next()
}
配置:
const admin = require('firebase-admin');
console.log("projectId: " + process.env.PROJECT_ID);
function initAdminByEnvironment(env) {
if (env == 'production') {
// init prod config
} else {
// init dev/staging config
}
}
module.exports = {admin: admin, initAdminByEnvironment: initAdminByEnvironment }
我猜这将强制管理员初始化首先通过中间件,然后当其他路由需要“管理员”时,访问正确的配置。有没有更好的方法可以根据请求环境确定管理配置?
【问题讨论】:
标签: node.js firebase express firebase-admin