Nodejs和Express中的动态配置文件



我使用的是带有expressjs的NodeJs,我想使用一个中间件,在每次请求之前从动态配置文件中读取一个变量(一些js文件包含一个对象,我可以在服务器运行时手动更改该对象)。我想存储一个标志,它将关闭所有请求(即发送响应而不继续到下一个路由),直到我将变量值更改为true,然后中间件将调用next(),以便所有路由都能工作。我宁愿避免为此关闭服务器,也不想将此变量存储在数据库中。。。

有类似于我需要的东西吗?

感谢

如果您只是把config.json文件放在函数中,您每次都会读取它。如果您将使用require('config.json),那么您将在启动时只读取此文件一次。

var fs = require("fs");
function (req,res,next) { 
  var config = fs.readFileSync('./config.json');
  config = JSON.parse(config.toString());
  if (config.registrationStatus === "open") { 
    next(); 
  } else { 
    res.send("registration closed");
  } 
}

检查主管:https://github.com/petruisfan/node-supervisor

它将监视文件更改和崩溃,每次都会重新启动您的应用程序。

你会得到更好的表现。

最新更新