从NodeJS读取环境中性配置值

时间:2014-05-21 11:33:22

标签: node.js configuration-files

我有一个环境。中性配置,即EnableEmailCheck。如果EnableEmailCheck = true,则将进行电子邮件验证,如果将其设置为false,则应用程序将不会执行电子邮件验证。

我需要了解如何在nodejs中执行类似的操作

  1. 配置文件的格式应该是什么?我想我可以将密钥值对保存在.json文件

  2. 如何从nodejs

  3. 中读取此配置值
  4. 如果更改配置文件的值,则需要重新启动nodejs app服务器以反映更改

  5. 如果电子邮件验证功能出现问题,此配置值将会更改。然后关闭该值;在这种情况下,由应用工程师将其设置为false。

1 个答案:

答案 0 :(得分:0)

我会以json格式保存它并在其上添加一个监视: config.json内容:

{
  "env":
   {
     "EnableEmailCheck": true;
   }
}

在开始时和更改时加载config.json文件:

var config = null;
var fs = require('fs');

function loadConfig(fileName )
{
   var data = fs.readFileSync( fileName  );
   return JSON.parse( data );
}
function useConfig( )
{
  if( config.env.EnableEmailCheck )
  {
    // do your stuff;
  } 

}
//load it at start
config = loadConfig("config.json");
useConfig();

//add watch for changes
fs.watchFile("config.json", function () 
{
  config = loadConfig("config.json");
  useConfig();
});