我在应用程序中使用了.env
个变量.js文件来访问密钥.在我下载新的Firebase Service Account Private Key
之前,一切都很顺利.当我用新值替换旧值时,我无法再访问密钥,因为在terminal
中,当我运行node app.js
时,我不断收到一条错误消息:
/用户/Cpu/桌面//node_modules/firebase admin/lib/auth/credential.js:129
错误:无法分析私钥:错误:PEM格式无效
我所做的只是c+p新的Private Key
,然后添加它并保存.env
文件,推送到heroku,它不再工作了.我甚至下载了一个新的Private Key
,但同样的问题也发生了.
新旧私钥
// old Private Key
-----BEGIN PRIVATE KEY-----\nbbbbbbbb\n-----END PRIVATE KEY-----\n
// new Private Key
-----BEGIN PRIVATE KEY-----\nzzzzzzzz\n-----END PRIVATE KEY-----\n
这个环境文件:
FIREBASE_PROJECT_ID=wwwwwwww
FIREBASE_CLIENT_EMAIL=xxxxxxxx
FIREBASE_DATABASE_URL=yyyyyyyy
FIREBASE_PRIVATE_KEY=-----BEGIN PRIVATE KEY-----\nzzzzzzzz\n-----END PRIVATE KEY-----\n
应用程序.js文件:
const dotenv = require('dotenv');
dotenv.load();
var admin = require("firebase-admin");
admin.initializeApp({
credential: admin.credential.cert({
projectId: process.env.FIREBASE_PROJECT_ID, // I get no error here
clientEmail: process.env.FIREBASE_CLIENT_EMAIL, // I get no error here
privateKey: process.env.FIREBASE_PRIVATE_KEY // I get error HERE
}),
databaseURL: process.env.FIREBASE_DATABASE_URL
});
How can I fix this issue?