我在名为.env
MONGOCONNECTIONSTRING=connectionstring
当我运行heroku local web
时,它说
[OKAY] Loaded ENV .env File as KEY=VALUE Format
我正在尝试使用像这样的环境变量
const connectionString = process.env.MONGOCONNECTIONSTRING
在我的index.js文件中
当我尝试打印变量connectionstring时,它是未定义的。如何访问变量。
Heroku的best practices说这样做但是我必须遗漏一些东西,因为变量永远不可用。
答案 0 :(得分:3)
Heroku的一般做法是通过Heroku Dashboard或CLI命令设置配置变量来配置应用程序。建议使用CLI,因为您可以一次设置多个变量:
heroku config:set MONGOCONNECTIONSTRING=connectionstring
.env
文件只应用于本地开发,不应将此文件提交到存储库。它实际上是在您链接的文档中提到的。
我也想知道你是否在Heroku上配置了MongoDB插件?如果是这样,它应该自动设置适当的连接字符串。也许你应该检查文档。
答案 1 :(得分:1)
我发现了这个问题。 .env
文件未在UTF-8
中编码,因此解析错误。