问题标签 [dotenv]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
3459 浏览

node.js - .env 使用 vscode 和 dotenv npm 调试断点

我正在使用 nodejs 服务器端 api,使用dotenv npm 包设置环境变量,并从package.json中的 npm 脚本运行代码,如下所示:

我需要的是配置我的 .vscode/launch.json 文件。

目前它看起来像:

请指导我。谢谢, Gopal.R

0 投票
2 回答
4327 浏览

javascript - 如何有条件地使用开发或生产环境变量

我在启动节点应用程序时收到此错误:

ReferenceError: DEV_MAIL_HOST is not defined

当我专门定义要使用的环境变量时,以下代码有效。

但是,我试图根据节点启动的模式有条件地注入环境变量。

这是我的 package.json,我在其中定义了启动模式。

我在这里想念什么?

感谢@MadWard 的评论修复。我需要解构我的环境变量。

0 投票
1 回答
97 浏览

node.js - 在复制对象之前,无法访问 Dotenv process.env 键

我正在将 .env 添加到我的 Node Express 应用程序中,当我这样做时:

我看到了一些我没有添加的默认进程 env 变量,以及我添加到我的 .env 文件 (TEST_VAR) 中的一个自定义变量:

但是,当我在下一行时:

我得到:

但是,运行这个:

返回预期:

我能够解决这个问题:

它实际上输出了我的 .env 文件中设置的值。

在我能够访问似乎存在的变量之前,任何人都可以解释为什么我需要制作副本吗?

0 投票
3 回答
215 浏览

reactjs - .env 显示不正确的值

所以我有一个名为.env以下内​​容的文件

我在我的 react 应用程序的 index.js 中调用它。

...

显示以下输出

我想也许我在其他地方声明了另一个 .env 文件,但事实并非如此。我搜索了我的项目,但PUBLIC_URL它不在我的项目中的任何位置。我什至不知道此时还要检查什么。

0 投票
2 回答
3980 浏览

javascript - NextJS + Heroku:未加载环境变量

我正在使用 NextJS 和 Heroku。

在索引处 - 第一次加载返回我在 getInitialProps 中获取的数据,但在常规函数中我收到一条错误消息,因为缺少环境变量。

当我转到不同的页面时,我得到了同样的错误,但是当我刷新时,我可以看到在 getInitialProps 获取的数据。但同样,在常规函数中,我收到缺少 env 变量的错误。

在本地它有效。我试过 dotenv-webpack 但没有帮助。我在 Heroku 中添加了配置变量。

有任何想法吗?

这是我的 next.config.js 文件:

0 投票
0 回答
37 浏览

node.js - 在部署到 Heroku 之前,我是否应该在 app.js 源文件中继续要求 dotenv npm 模块?

我知道我们不能通过将 .env 文件添加到 .gitignore 来将 .env 文件提交到 Heroku,但是我应该将这行代码保留在 app.js 源文件中吗?

还是应该在 git push 之前删除这一行?

我有另一个相关的问题。为了让节点应用程序与 Heroku 一起工作,他们让我们将其添加到 app.js 中:

它如何在不需要 dotenv 模块的情况下工作?他们是否将此要求作为部署过程的一部分添加到 app.js 文件中?

0 投票
2 回答
6424 浏览

node.js - using dotenv path with JEST

I'm trying to use a different .env file for my Jest tests, but so far I couldn't make it work.

package.json:

Every time I ran my npm test, the MONGODB_URL used was the stored in my .env file, instead of my test.env file

I created a config folder to store my .env dev file to avoid this, but now my app doesn't use the env vars when I run the Jest.

I setup a config path in my dev script, but I couldn't do the same with Jest.

Expected behavior: I just want to use a different MONGODB_URL for my tests with Jest.

0 投票
3 回答
4217 浏览

javascript - JwtModule.registerAsync 在 NestJS 中不起作用

我正在开发一个 NestJS 项目,我需要将 JWT 与.env配置一起使用。它生成令牌,但在尝试访问安全 url(带有授权标头)时,它只返回未经授权的消息。

jwt.strategy.ts

auth.module.ts

主要的.ts

看起来JwtModule.registerAsync没有使用环境变量。我尝试了很多东西,但总是失败。如果我为静态数据更改环境变量auth.module.ts,那么它工作正常。像这样的东西:

更新 项目结构

我的 main.ts 现在看起来像这样。

您会看到 my.env位于项目的根目录中。

0 投票
3 回答
1156 浏览

javascript - 如何在客户端 Javascript 中调用 Node/Express API 密钥 (.env)?

现在,我在客户端 javascript 中使用 OpenWeatherMap API 密钥来创建一个简单的天气应用程序(Node/Express)。我知道这在开发之外并不理想,所以我做了 npm install dotenv。在服务器端,我可以在 Node.js 中很好地获取和设置环境变量。当我控制台注销时,我可以看到它们。

如何在客户端的 javascript 中调用 API 密钥?例如,目前我的天气应用程序在一个名为weather.js 的文件中具有简单的逻辑,而HTML 使用weather.js。

理想情况下,我只想调用我的 apihttp://api.openweathermap.org/data/2.5/forecast/daily?lat=${lat}&lon=${lon}&units=metric&appid=${process.env.WEATHER_API_KEY}

我知道 .envs 在服务器端,你必须做一些事情才能让它在客户端工作。这里的新节点开发人员读了太多,我认为我对 requireJS、Browserify、模块、.env 等感到困惑......

0 投票
1 回答
2076 浏览

node.js - node.js dotenv 加载不是一个函数

我刚刚更新了我的包,我无法使用 npm dotenv 包加载我的 env 文件。

“dotenv”:“^7.0.0”,“@types/dotenv”:“^6.1.0”,

"error":{},"level":"error","message":"uncaughtException: dotenv_1.default.load 不是函数\nTypeError: dotenv_1.default.load 不是函数