【发布时间】:2017-12-08 12:06:14
【问题描述】:
我在我的 mac 上使用环境变量来存储一些敏感凭据,并尝试通过 Node.js 访问它们。我将它们添加到我的环境配置文件中
export VARIABLE_NAME=mySensitiveInfo
当我使用echo $VARIABLE_NAME 时,我会收到正确的输出(我的敏感信息)。
但是,当我尝试使用 process.env.VARIABLE_NAME 在 Node 中访问同一个变量并尝试在控制台上打印出来时,我得到一个未定义的结果。
其他环境变量似乎没问题。例如,当我console.log(process.env.FACEBOOK_CALLBACK_URL) 时,它会将正确的值打印到我的控制台。我几天前添加了 FACEBOOK_CALLBACK_URL。
我必须重新启动我的机器还是什么?环境变量在 Node 中可用之前需要一定的时间吗?我在 SO 上看到的最接近的答案是 this post,但没有人能够弄清楚它为什么会发生。
【问题讨论】:
-
什么是环境配置文件?
.bash_profile? -
你是如何运行 Node 程序的?
-
@JeremyRodi 我正在使用 Visual Studio Code 并使用
nodemon或node app.js来启动我的程序。 -
@shaochuancs 我实际上在
.bash_profile不起作用之后添加了.profile和.bash_profile。所以现在我两者都有。
标签: node.js environment-variables