Как мне использовать firebase admin SDK, используя github в качестве своего сервера

#javascript #node.js #firebase #firebase-admin

# #javascript #node.js #firebase #firebase-admin

Вопрос:

Я использую GitHub в качестве своего сервера для использования firebase admin SDK. Я написал код в Node.js окружение и поместил его в мой репозиторий GitHub. Как мне вызвать эти функции в моем интерфейсном JS-коде? Я выполнил команду инициализации npm и команду npm install firebase-admin —save, и это создало мои файлы package и package-lock, а также папку node-modules. Я получил закрытый ключ учетной записи службы из консоли firebase и добавил его в свой каталог. Затем я создал index.js файл и написал свой код. Что мне делать дальше?

     var admin = require("firebase-admin");
var serviceAccount = require("./troop-30-elections-web-app-firebase-adminsdk-obsmr-f9eb2b81ac.json");
admin.initializeApp({
  credential: admin.credential.cert(serviceAccount),
  databaseURL: "https://troop-30-elections-web-app.firebaseio.com"
});

function resetPassword (data) {
  admin.auth().updateUser(data.docId, { 
    password: data.newPass
   })
  .then(() => {
      console.log("User Password Sucessfully Updated");  // this is what gets sent back to the app
  });
};

function deleteUser (data) {
 admin.auth().deleteUser(data.docId).then(() => {
    console.log('User Successfully Deleted');
  });
};
 

Ответ №1:

Невозможно развернуть код облачных функций в любом месте с помощью Google Cloud Functions. Это просто не сработает вообще.

GitHub на самом деле не является «сервером». Он предлагает способ запуска действий на основе действия в вашем репозитории, но в нем не будут размещаться конечные точки API, которые вы определяете.

Комментарии:

1. Спасибо за ваш ответ. Есть ли какой-либо способ использовать SDK, а не в облачной функции? Есть ли сервер, который я могу использовать? Я просто хочу использовать firebase admin SDK без использования облачных функций, но я понятия не имею, как это сделать.

2. Я внес правку в свой код. Вместо использования functions.https.OnCall я просто создал обычную функцию js. Это сработает?

3. Вам нужен сервер, который может выполнять Node.js код. Вам необходимо либо настроить и управлять таким сервером, либо использовать управляемую серверную среду, такую как Google Compute Engine, AWS EC2 и т. Д