相关疑难解决方法(0)

在Node.js中读取环境变量

有没有办法在Node.js代码中读取环境变量?

比如Python的os.environ['HOME'].

javascript environment-variables node.js

1240
推荐指数
7
解决办法
57万
查看次数

无法在我的Node.js应用中读取我的环境变量

我在Ubuntu 12.04上,我只是在学习环境变量.我试图从我的应用程序中读取自定义变量,但它总是显示为undefined.这是我的测试应用程序的代码:

// app.js

console.log('Value: ' + process.env.NODE_ENV);
Run Code Online (Sandbox Code Playgroud)

如果我运行以下命令,您将看到该变量具有值:

$ NODE_ENV=production
$ echo $NODE_ENV
production
Run Code Online (Sandbox Code Playgroud)

我可以echo $NODE_ENV整天和它继续向我展示"生产",但是当我process.env.NODE_ENV在我的Node应用程序中它总是显示"未定义".

$ node app.js
Value: undefined
Run Code Online (Sandbox Code Playgroud)

这里有一个奇怪的部分,如果我显示另一个我知道已经存在的环境变量,比如说process.env.PATH它可以工作.

$ node app.js
Value: /usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
Run Code Online (Sandbox Code Playgroud)

另一个怪癖是该命令printenv list似乎不包含我的自定义变量,NODE_ENV尽管这echo $NODE_ENV显示了正确的值.printenv NODE_ENV没有显示任何内容,但printenv PATH显示正确的值,就像我PATH在节点应用程序中访问时一样.

bash terminal ubuntu environment-variables node.js

13
推荐指数
2
解决办法
1万
查看次数