Я размещаю функцию node.js
в Google Firebase, и я хотел бы создавать и обновлять учетные записи пользователей на стороне сервера .Файл моей учетной записи службы json
выглядит следующим образом:
{
"apiKey" : ""
"authDomain" : ""
"databaseURL" : ""
"projectId" : ""
"storageBucket" : ""
"messagingSenderId": ""
}
Я удалил поля по причинам.Когда я загружаю учетные данные и создаю экземпляр admin
с помощью:
import * as admin from 'firebase-admin' ;
import * as functions from 'firebase-functions';
const accountKeyPath = path.join(__dirname, '../credentials/serviceAccountKey.json')
const accountKey = require(accountKeyPath);
const firebaseAdmin = admin.initializeApp( accountKey );
firebaseAdmin
достаточно для crud
базы данных.Однако он не может создавать новых пользователей, пока я не объявлю это с помощью:
const firebaseAdmin = admin.initializeApp({
credential: admin.credential.cert(accountKey)
, databaseURL: "..."
});
Или так, как кажется.Когда я запускаю это, я получаю ошибку:
throw new
error_1.FirebaseAppError(error_1.AppErrorCodes.INVALID_CREDENTIAL, errorMessage);
^
Error: Certificate object must contain a string "private_key" property.
Это необъяснимо для меня, потому что я не знаю, как получить служебную учетную запись json
с private_key
.Предполагается ли создавать его каждый раз при запуске сервера?