好的,我是节点的新手,实际上只是使用节点服务器来提供静态js,但我无法在任何地方找到任何信息. 我正在运行一个应用程序ember app kit,它被构建到一个节点server.js用于部署,而heroku运行它
我正在运行一个应用程序ember app kit,它被构建到一个节点server.js用于部署,而heroku运行它与节点server.js.
它使用grunt进行建筑,测试等.
我想知道如何指定可以被heroku配置变量覆盖的配置变量(即身份验证令牌).
我能够得到的最接近的是一个自定义任务,它读取环境变量并写出一个内置到站点中的json文件(并分配给一个全局变量).这在本地工作,但没有考虑到heroku配置.
我甚至编写了一个部署脚本来获取heroku的配置,在本地将它们作为环境变量导出,并进行构建 – 这有效,但配置仅在应用程序部署时更新.因此,如果我执行heroku配置:添加CONFIG_TEST = test_value,我的应用程序在下次部署应用程序之前看不到CONFIG_TEST的值.
我想让我的应用程序立即开始在浏览器JS中嵌入该配置值.
以我的应用程序设置方式使用节点的任何方式吗?
我不确定我是否理解在运行时从环境中简单地获取配置变量有什么问题.在代码中使用process.env.KEY,并将结果嵌入到您可能拥有的任何模板中,并将其作为结果提供.当您更改Heroku配置变量时,您的进程将重新启动,因此它会获取新值.
问题是您提供静态文件的事实吗?如果是这样 – 您可以简单地更改它,以便您在使用之前使用模板引擎对它们进行一些处理吗?