如何在 html 文件中获取节点配置

How to get the node config in html file

我根据环境有一个节点配置。 https://github.com/lorenwest/node-config

default.json

{
  "server": {
    "host": "localhost",
    "protocol": "http",
    "port": 9011
  }
}

我想在 <script> 标签内的 index.html 中获取它。有谁知道这样做的方法吗?

我可以在 js 文件中获取此配置,如下所示

app.js

var config = require('config');
console.log(config.server.host);

对 app.js 文件进行 ajax 调用并获取您的配置文件数据并在 index.html 文件

中使用

我是 node-config 的维护者。在一个复杂的应用程序中,您可能会有一些您希望只在后端可见的秘密,以及您希望与前端共享的一些值。

将您想要与前端共享的所有值放在 frontend 配置项下。

然后创建一个 express 路由,服务于 frontend 配置 /config.js:

router.get('/config.js', _configjs);
// Cache the config, don't recompute it on every request
var configJavascript = 'window.CONFIG='+JSON.stringify(config.get('frontend'));
function _configjs (req, res) {
  res.setHeader("Content-Type", "text/javascript");
  // Last modified now
  res.setHeader('Last-Modified', (new Date()).toUTCString());
  // Cache the config for 5 minutes
  res.setHeader('Cache-Control', 'max-age='+(60*5));
  res.writeHead(200);
  res.end(configJavascript);
}

现在从前端加载 /config.js 后,您可以通过

访问前端配置