我试着跟着教程,上面写着:

有几种方法可以加载凭据。 从环境变量加载, 从磁盘上的JSON文件加载, 关键字如下: USER_ID, USER_KEY ...这意味着如果您正确地设置了环境变量,您就可以 根本不需要在应用程序中管理凭据。

根据一些谷歌搜索,似乎我需要在process.env?我如何以及在哪里设置这些凭证?示例请。


当前回答

我强烈建议你查查dotenv包。

https://github.com/motdotla/dotenv

它有点类似于@Benxamin回答中建议的库,但它要干净得多,并且不需要任何bash脚本。同样值得注意的是,代码库很受欢迎,维护得很好。

基本上你需要一个.env文件(我强烈建议忽略你的git/mercurial/etc):

FOO=bar
BAZ=bob

然后在你的申请入口文件中尽早输入以下一行:

require('dotenv').config();

繁荣。完成了。的过程。Env '现在将包含上面的变量:

console.log(process.env.FOO);
// bar

”。Env文件不是必需的,所以你不需要担心你的应用程序在它缺席时崩溃。

其他回答

只需在命令行上提供env值

USER_ID='abc' USER_KEY='def' node app.js

可以通过process global variable设置环境变量,方法如下:

process.env['NODE_ENV'] = 'production';

适用于所有平台。

如果你使用的是mac/linux,你想检索你正在使用的机器的本地参数,这是你要做的:

在终端运行nano ~/.bash_profile 添加如下一行:export MY_VAR=var 保存并运行source ~/.bash_profile 在节点中使用console.log(process.env.MY_VAR);

我强烈建议你查查dotenv包。

https://github.com/motdotla/dotenv

它有点类似于@Benxamin回答中建议的库,但它要干净得多,并且不需要任何bash脚本。同样值得注意的是,代码库很受欢迎,维护得很好。

基本上你需要一个.env文件(我强烈建议忽略你的git/mercurial/etc):

FOO=bar
BAZ=bob

然后在你的申请入口文件中尽早输入以下一行:

require('dotenv').config();

繁荣。完成了。的过程。Env '现在将包含上面的变量:

console.log(process.env.FOO);
// bar

”。Env文件不是必需的,所以你不需要担心你的应用程序在它缺席时崩溃。

环境变量(在本例中)用于向应用程序传递凭据。USER_ID和USER_KEY都可以从process.env中访问。USER_ID和process.env。USER_KEY分别。你不需要编辑它们,只需要访问它们的内容。

看起来他们只是让你选择从任何一个进程加载你的USER_ID和USER_KEY。Env或磁盘上的某个指定文件。

现在,当您运行应用程序时,奇迹发生了。

USER_ID=239482 USER_KEY=foobar节点app.js

这将传递用户id 239482和用户密钥作为foobar。这适用于测试,但是对于生产,您可能需要配置一些bash脚本来导出变量。