Облачная функция не запускается при записи в базу данных - PullRequest
0 голосов
/ 21 марта 2020

Я впервые пишу облачные функции. Я настроил cli и все, я хочу, чтобы моя функция запускалась всякий раз, когда в моей коллекции пользователей есть операция. Вот как выглядит мой код:

exports.testFn = functions.database.ref("/users/{userId}").onWrite(event => {
  console.log("testFn was Triggered!")
  console.log(`New write on user's collection: ${event.after.val()}.`)
})

Я проверяю журналы каждый раз, когда пишу / обновляю что-то в моей коллекции пользователей, в панели управления Firebase нет операторов консоли или новых журналов. Что не так? Кроме того, как я могу получить userId значение? Пожалуйста, помогите!

1 Ответ

1 голос
/ 21 марта 2020

Код в вашем вопросе - onWrite триггер для базы данных в реальном времени. Так как вы используете облачное хранилище, вы можете использовать onCreate для чтения новых добавленных данных:

exports.dbDelete = functions.firestore.document('/doc/path').onCreate((snap, context) => {
  const newData = snap.data(); // data that was created 
  const authInfo = context.auth;
});

authInfo будет содержать информацию аутентификации для пользователя, который запустил функцию.

https://firebase.google.com/docs/reference/functions/cloud_functions_.eventcontext

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...