Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在dotenv中导出某些_ENV_VAR=KEY和导出其他_ENV_VAR=KEY之间的差异?_Javascript_Node.js_Dotenv - Fatal编程技术网

Javascript 在dotenv中导出某些_ENV_VAR=KEY和导出其他_ENV_VAR=KEY之间的差异?

Javascript 在dotenv中导出某些_ENV_VAR=KEY和导出其他_ENV_VAR=KEY之间的差异?,javascript,node.js,dotenv,Javascript,Node.js,Dotenv,我对Node.js比较陌生。我想将环境变量从.env文件导出到javascript文件。为了做到这一点,我正在使用dotenv 我应该使用哪种方法将环境变量导出到我的主javascript文件(比如-app.js)中 需要注意的是,在app.js中的console.log(process.env)上,GEOCODER_API_KEY_1显示为env变量,而不是GEOCODER_API_KEY?这是为什么。那么第一个有什么用,因为它是不可访问的? 更令人困惑的是: var options = {

我对Node.js比较陌生。我想将环境变量从.env文件导出到javascript文件。为了做到这一点,我正在使用dotenv

我应该使用哪种方法将环境变量导出到我的主javascript文件(比如-app.js)中

需要注意的是,在app.js中的console.log(process.env)上,GEOCODER_API_KEY_1显示为env变量,而不是GEOCODER_API_KEY?这是为什么。那么第一个有什么用,因为它是不可访问的? 更令人困惑的是:

var options = {
  provider: 'google',
  httpAdapter: 'https',
  apiKey: process.env.GEOCODER_API_KEY,
  formatter: null
};  // this works

... // some javascript
console.log(process.env.GEOCODER_API_KEY) //SHOWS UNDEFINED

我基本上希望将API_密钥(不受限制)安全地导出到我的项目中。是否有我可能遗漏的问题?

.env
文件中编写可移植变量声明的正确方法是:

FOO=BAR
这是-当您使用类似的
dotenv
实现时

在Unix/Bash环境中使用export in
.env
时(您可能已经在野外看到过),源文件将产生与声明变量范围有关的结果:

# .env
export GEOCODER_API_KEY=someKeyXYZ
GEOCODER_API_KEY_1=someKeyXYZ
require('dotenv').config();

console.log(process.env);
# .env
export GEOCODER_API_KEY=someKeyXYZ
GEOCODER_API_KEY_1=someKeyXYZ
# main.sh

#!/bin/bash

. ./.env

./subprocess.sh
# subprocess.sh
#!/bin/bash

echo "GEOCODER_API_KEY": $GEOCODER_API_KEY

echo "GEOCODER_API_KEY_1": $GEOCODER_API_KEY_1
./main.sh
GEOCODER_API_KEY: someKeyXYZ
GEOCODER_API_KEY_1: