我试着跟着教程,上面写着:
有几种方法可以加载凭据。 从环境变量加载, 从磁盘上的JSON文件加载, 关键字如下: USER_ID, USER_KEY ...这意味着如果您正确地设置了环境变量,您就可以 根本不需要在应用程序中管理凭据。
根据一些谷歌搜索,似乎我需要在process.env?我如何以及在哪里设置这些凭证?示例请。
我试着跟着教程,上面写着:
有几种方法可以加载凭据。 从环境变量加载, 从磁盘上的JSON文件加载, 关键字如下: USER_ID, USER_KEY ...这意味着如果您正确地设置了环境变量,您就可以 根本不需要在应用程序中管理凭据。
根据一些谷歌搜索,似乎我需要在process.env?我如何以及在哪里设置这些凭证?示例请。
当前回答
只需在命令行上提供env值
USER_ID='abc' USER_KEY='def' node app.js
其他回答
这取决于您的操作系统和shell
在linux上使用shell bash,你可以在控制台中创建这样的环境变量:
export FOO=bar
有关ubuntu环境变量的更多信息(例如):
ubuntu上的环境变量
如果你正在使用visual studio代码调试功能,你可以添加"envFile": "${workspaceRoot}/。Env”启动配置。这样你就不用用dotenv了。
{
"cwd": "${workspaceRoot}",
"command": "npm start",
"name": "Run be",
"request": "launch",
"type": "node-terminal",
"envFile": "${workspaceRoot}/.env"
},
步骤1:将环境变量添加到相应的文件中。例如,您的登台环境可以称为.env。其中包含特定于登台环境的环境变量USER_ID和USER_KEY。
第二步:包装。Json文件,添加以下内容:
"scripts": {
"build": "sh -ac '. ./.env.${REACT_APP_ENV}; react-scripts build'",
"build:staging": "REACT_APP_ENV=staging npm run build",
"build:production": "REACT_APP_ENV=production npm run build",
...
}
然后在部署脚本中像这样调用它:
npm run build:staging
超级简单的设置和工作就像一个魅力!
来源:https://medium.com/@tacomanator environments-with-create-react-app-7b645312c09d
环境变量(在本例中)用于向应用程序传递凭据。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脚本来导出变量。
使用dotenv-webpack让您的生活更轻松。简单地安装它npm install dotenv-webpack——save-dev,然后在你的应用程序的根目录下创建一个。env文件(记得在你推送git之前把它添加到。gitignore中)。打开这个文件,设置一些环境变量,例如:
ENV_VAR_1=1234
ENV_VAR_2=abcd
ENV_VAR_3=1234abcd
现在,在你的webpack配置中添加:
const Dotenv = require('dotenv-webpack');
const webpackConfig = {
node: { global: true, fs: 'empty' }, // Fix: "Uncaught ReferenceError: global is not defined", and "Can't resolve 'fs'".
output: {
libraryTarget: 'umd' // Fix: "Uncaught ReferenceError: exports is not defined".
},
plugins: [new Dotenv()]
};
module.exports = webpackConfig; // Export all custom Webpack configs.
只有const Dotenv = require(' Dotenv -webpack');,插件:[new Dotenv()],当然还有模块。出口= webpackConfig;//导出所有Webpack配置。是必需的。然而,在某些情况下,您可能会得到一些错误。对于这些问题,你也有解决方案,这意味着你可以修复某些错误。
现在,你可以在任何地方使用process.env。ENV_VAR_1 process.env。ENV_VAR_2 process.env。应用程序中的ENV_VAR_3。