节点 cli 脚本中未读取 dotenv 文件
dotenv file not readed in node cli script
我在我的节点 cli 脚本文件夹中创建了一个 .env
文件。我正在尝试使用 process.env.MY_VARIABLE
加载我在其中定义的变量,但我注意到它们未定义。
目前这是我的 cli 脚本 index.js
文件中的代码
#!/usr/bin/env node
const fb = require('facebook-chat-api');
//debug only
console.log(process.env.FB_EMAIL, process.env.FB_PWD)
let credentials = { email: process.env.FB_EMAIL, password: process.env.FB_PWD }
fb(credentials, (err, api) => {
if(err) return console.log(err);
console.log(api);
});
这是我的 .env
文件的内容,它位于 package.json 文件和 index.js
的同一目录中
FB_EMAIL="some@email.com"
FB_PWD="apasswprd"
我错过了什么吗?
您如何加载 .env 文件? .env 到 process.env
的映射不会自动发生。您可以在 https://www.npmjs.com/package/dotenv 上查看为您加载 .env 文件 process.env
.
另一种方法是在您的环境中使用 FB_EMAIL
和 FB_PWD
运行 该 cli 工具。你可以在你的终端上试试export FB_EMAIL=****
我在我的节点 cli 脚本文件夹中创建了一个 .env
文件。我正在尝试使用 process.env.MY_VARIABLE
加载我在其中定义的变量,但我注意到它们未定义。
目前这是我的 cli 脚本 index.js
文件中的代码
#!/usr/bin/env node
const fb = require('facebook-chat-api');
//debug only
console.log(process.env.FB_EMAIL, process.env.FB_PWD)
let credentials = { email: process.env.FB_EMAIL, password: process.env.FB_PWD }
fb(credentials, (err, api) => {
if(err) return console.log(err);
console.log(api);
});
这是我的 .env
文件的内容,它位于 package.json 文件和 index.js
FB_EMAIL="some@email.com"
FB_PWD="apasswprd"
我错过了什么吗?
您如何加载 .env 文件? .env 到 process.env
的映射不会自动发生。您可以在 https://www.npmjs.com/package/dotenv 上查看为您加载 .env 文件 process.env
.
另一种方法是在您的环境中使用 FB_EMAIL
和 FB_PWD
运行 该 cli 工具。你可以在你的终端上试试export FB_EMAIL=****