设置环境变量以供节点检索

node.js Node.js

乐米亚

2020-03-17

我正在尝试遵循一个教程,它说:

有几种加载凭据的方法。

  1. 从环境变量加载,
  2. 从磁盘上的JSON文件加载,

密钥需要如下:

USER_ID, USER_KEY

...这意味着,如果您正确设置了环境变量,则根本不需要管理应用程序中的凭据。

基于一些谷歌搜索,看来我需要将变量设置为process.env如何以及在哪里设置这些凭据?请举例。

第1951篇《设置环境变量以供节点检索》来自Winter(https://github.com/aiyld/aiyld.github.io)的站点

6个回答
TomGreen 2020.03.17

如果您使用的是Mac / Linux,并且想要检索所用计算机的本地参数,则可以执行以下操作:

  1. 在终端运行nano〜/ .bash_profile
  2. 添加如下一行:export MY_VAR = var
  3. 保存并运行源〜/ .bash_profile
  4. 在节点中使用,例如:console.log(process.env.MY_VAR);
泡芙小卤蛋 2020.03.17

设置系统环境变量后,我变得不确定。当我将APP_VERSION放入User env var中时,可以通过process.env.APP_VERSION显示来自节点的值

阿飞Pro 2020.03.17

对于Windows用户,此Stack Overflow问题和最佳答案对于如何通过命令行设置环境变量非常有用。

如何在Windows中设置NODE_ENV = production?

Green前端 2020.03.17

遇到了一个很好的工具来做到这一点。

节点环境文件

将环境文件(包含ENV变量导出)解析并加载到Node.js环境中,即process.env-使用以下样式:

.env

# some env variables

FOO=foo1
BAR=bar1
BAZ=1
QUX=
# QUUX=
三三呀 2020.03.17

这取决于您的操作系统和外壳

具有shell bash的linux上,您可以在控制台中创建如下环境变量:

export FOO=bar

有关ubuntu上的环境变量的更多信息(例如):

Ubuntu上的环境变量

米亚凯 2020.03.17

使用环境变量(在这种情况下)将凭据传递给您的应用程序。USER_ID并且USER_KEY都可以分别process.env.USER_ID访问process.env.USER_KEY您无需编辑它们,只需访问它们的内容即可。

看起来他们只是给你加载你的选择USER_ID,并USER_KEY从任一process.env或磁盘上的一些specificed文件。

现在,当您运行应用程序时,魔术就发生了。

USER_ID=239482 USER_KEY=foobar node app.js

这会将用户ID 239482和用户密钥作为传递foobar这适合于测试,但是对于生产而言,您可能会配置一些bash脚本以导出变量。

问题类别

JavaScript Ckeditor Python Webpack TypeScript Vue.js React.js ExpressJS KoaJS CSS Node.js HTML Django 单元测试 PHP Asp.net jQuery Bootstrap IOS Android