javascript - dotenv 和 nodejs 未定义 process.env 变量

标签 javascript node.js npm environment-variables

我的 dotenv 包有问题。

我的应用程序文件夹:

 |_app_folder
      |_app.js
      |_password.env
      |_package.json

我当然安装了 dotenv,但是当我尝试记录 process.env 变量时,结果总是未定义,请你帮助我吗?

password.env:

//password.env 
CLIENT_ID=xxxxxxxx

app.js:

//app.js
const express = require('express');
const app = express();
const Twig = require("twig");

//Require dotenv
require('dotenv').config();

// Setting the Twig options
app.set("twig options", {
    allow_async: true, 
    strict_variables: false
});

app.get('/', function (req, res) {
  //Trying to log it
  console.log(process.env.CLIENT_ID);
  //
  res.render('index.twig', {
    date : new Date().toString()
  });
});

app.get('/instagram',function(req,res){
  // Building the URL
  let url = 'https://api.instagram.com/oauth/authorize/?client_id=';
  // Redirect to instagram for oauth 
  res.redirect(url);
})

app.listen(3000, function () {
  console.log('Running');
})

感谢您的宝贵时间。

最佳答案

默认情况下,dotenv 包仅加载名为 .env 的文件,如果您想加载另一个需要指定路径的文件

require("dotenv").config({ path: "path/to/file" })

资源:

https://www.npmjs.com/package/dotenv

关于javascript - dotenv 和 nodejs 未定义 process.env 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52063997/

相关文章:

javascript - Node 中的条件 app.use - Express

javascript - NodeJS、MongoDB、Mongoose 非阻塞保存大数据

javascript - 包 react@15.2.1 不满足其 sibling 的 peerDependencies 要求

javascript - 如何使用字符串变量作为 JSON 对象中的键

javascript - 从 <script> 生成的 html 调用 .ts 文件中的函数

javascript - 将整个页面向左移动,然后向右移动

node.js - 确定expressjs中http请求的远程端口

php - XMLHttpRequest ReadyState 始终未定义

javascript - 在客户端部署没有 npm 的 node.js 项目

node.js - create-react-app eslint 问题是由于更高级别的文件夹包含另一个带有 node_modules 的应用程序