【发布时间】:2016-11-15 12:54:23
【问题描述】:
在将部署到 heroku 的节点服务器上,我必须从环境变量中加载一个长私钥。当我以传统方法在 .env 文件中声明我的环境变量时(key=value,如果 value 很长,则没有换行符),在本地运行它(通过'heroku local')并 console.log 加载的环境变量值,控制台显示它已被分成几行(但不在 '\n' 字符周围)。
从环境变量中加载字符串:
在将字符串硬编码到服务器时加载字符串,控制台日志显示:
我切换到工头来加载环境变量并使用 JSON 语法让它工作。我的问题是,在传统方法上,为什么控制台显示字符串被拆分?
加载 long 值,因为 Firebase 3 SDK 初始化需要此值,因为 Heroku 不允许您加载私钥文件本身。
【问题讨论】:
-
看起来你的一个终端设置为换行,而另一个没有。我建议朝那个方向搜索,因为这不太可能与记录的代码有太大关系。
-
谢谢。该输出来自同一个终端。在我的服务器上,我 console.log 加载的环境变量和硬编码的字符串,只是为了比较。
标签: node.js heroku firebase environment-variables