环境变量在节点 js 服务器中不起作用
environment variables not working in node js server
当我直接在 nodemailer 服务器中设置我的用户名和密码时,它按预期工作
auth: {
user: 'myusername',
pass: 'mypassword'
},
但是在使用 dotenv 时,没有任何反应
require ('dotenv').config();
auth: {
user: process.env.USERNAME,
pass: process.env.PASSWORD
},
我在服务器端 运行 npm install dotenv
并使用以下变量设置一个 .env
文件:
USERNAME:myusername
PASSWORD:mypassword
您的 .env
文件中的语法不正确。使用等号 =
而不是冒号 :
.
USERNAME=myusername
PASSWORD=mypassword
如 dotenv docs 中所述,它需要 NAME=VALUE
格式的变量。您的文件应改为包含:
USERNAME=myusername
PASSWORD=mypassword
当我将 env 文件命名为 时,我遇到了同样的问题。env.local
但是当我将文件名更改为简单的 .env 时,它起作用了!
当我直接在 nodemailer 服务器中设置我的用户名和密码时,它按预期工作
auth: {
user: 'myusername',
pass: 'mypassword'
},
但是在使用 dotenv 时,没有任何反应
require ('dotenv').config();
auth: {
user: process.env.USERNAME,
pass: process.env.PASSWORD
},
我在服务器端 运行 npm install dotenv
并使用以下变量设置一个 .env
文件:
USERNAME:myusername
PASSWORD:mypassword
您的 .env
文件中的语法不正确。使用等号 =
而不是冒号 :
.
USERNAME=myusername
PASSWORD=mypassword
如 dotenv docs 中所述,它需要 NAME=VALUE
格式的变量。您的文件应改为包含:
USERNAME=myusername
PASSWORD=mypassword
当我将 env 文件命名为 时,我遇到了同样的问题。env.local 但是当我将文件名更改为简单的 .env 时,它起作用了!