Heroku local 不读取我的 .env 文件

Noa*_*oam 5 heroku heroku-postgres heroku-cli

我在以下位置尝试了 heroku 节点示例:https : //devcenter.heroku.com/articles/getting-started-with-nodejs#introduction

并使用 Postgres 作为数据库。

所有的工作。

现在我想在本地运行它,所以我使用了以下示例:https : //devcenter.heroku.com/articles/heroku-local

要将 DATABASE_URL 获取到我的 .env 文件 - 但即使我在本地运行 Heroku 时它显示,我也无法让它工作:

[OKAY] Loaded ENV .env File as KEY=VALUE Format
Run Code Online (Sandbox Code Playgroud)

数据库仍然没有连接,当我添加时:

 console.log(process.env.DATABASE_URL);
Run Code Online (Sandbox Code Playgroud)

它将 undefined 写入控制台。

Noa*_*oam 7

事实证明,由于某种原因,我的 .env 文件没有采用正确的 unicode 编码。

我怀疑该命令:

heroku config:get DATABASE_URL -s  >.env
Run Code Online (Sandbox Code Playgroud)

在我的 Windows 机器上创建一个无效的 .env 文件。它使用 UTF-16 LE 编码创建一个文件。

一旦我将其更改为 UTF-8,一切就都奏效了。

You can do that in VSCODE by clicking on the encoding in the status bar. 在此处输入图片说明