MERN:"无效的 API 密钥"Heroku 部署?



如何让Firebase Auth在Heroku部署上工作?

Auth工作在MERN应用程序的本地开发没有任何问题。所有的私人信息都存储在一个。env文件中,然后在我的react应用程序中使用process.env.VARIABLE_NAME调用。

然而,当我部署到Heroku生产环境并添加如下所示的env文件时,我得到了错误:"您的API密钥无效,请检查您是否正确复制了它">

这是我部署的Heroku应用:https://evening-fortress-01391.herokuapp.com/login

REACT_APP_FIREBASE_API_KEY=XXXXXXXX
REACT_APP_FIREBASE_AUTH_DOMAIN=XXXXXXXX
REACT_APP_FIREBASE_PROJECT_ID=XXXXXXXX
REACT_APP_FIREBASE_STORAGE_BUCKET=XXXXXXXX
REACT_APP_FIREBASE_MESSAGING_SENDER_ID=XXXXXXXX
REACT_APP_FIREBASE_APP_ID=XXXXXXXX

另外,heroku config命令会在终端显示输入的env变量。

知道为什么Auth在本地工作而不是在部署中吗?谢谢你!

回答,因为注释太长了

听起来超级难以调试-你的应用程序只是显示登录而不是API密钥错误=)对我来说,这听起来就像它所说的,一个不正确的API密钥或格式问题。

我会使用与您的API密钥(如REACT_APP_FIREBASE_POTATO=p07470-test-example-foooobar)相同的字符进行测试配置变量,然后在您的前端应用程序中使用console.log("TEST" + process.env.REACT_APP_FIREBASE_POTATO);。然后发布它,并在生产环境中检查。

测试环境变量是否正常工作,是否存在一些字符编码问题(您是否在控制台中看到了应该看到的准确字符)

最新更新