Dotenv未正确加载 [英] Dotenv not loading properly

查看:704
本文介绍了Dotenv未正确加载的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试使用 dotenv 加载的 process.env 访问一些环境变量。

I am trying to access some environment variables using process.env that were loaded by dotenv.

我的文件夹结构:

.env
src
-- - server.js

我的server.js配置:

My server.js configuration :

(...)
import auth from './middleware/auth'
import dotenv from 'dotenv'
dotenv.load({
    path: '../',
    silent: process.env.NODE_ENV === 'production'
})
auth()
// Instantiate app
const app = express();

我尝试访问的文件 process.env 变量:

The file where I try to access process.env variable :

(...)
module.exports = function() {
        console.log("env", process.env.MONGODB_URI)
        var options = {};
        options.jwtFromRequest = ExtractJwt.fromAuthHeader()
        options.secretOrKey = process.env.JWT_SECRET

哪些日志 env,未定义,然后与

TypeError :JwtStrategy需要秘密或密钥

即使我将 .env code> src (与服务器相同的目录),并删除 config 中的路径 ,它失败了。

Even if I move .env into src (same directory as server) and remove path in config, it fails.

推荐答案

看来,当您指定路径时,需要将其填满:

It appears that when you specify the path, you need to make it full:

require('dotenv').config({path: __dirname + '/../.env'});

.env是您的文件

这篇关于Dotenv未正确加载的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆