Запуск функции облачного хранилища Firebase - определение токена идентификатора пользователя для вновь созданного файла - PullRequest
0 голосов
/ 19 февраля 2020

[РЕЗЮМЕ]

Для вновь загруженного файла в облачное хранилище Firebase я хочу определить, кто загрузил файл (маркер идентификатора пользователя) из запущенной функции Firebase.

[ДЕТАЛИ]

Я разрешаю аутентифицированному мобильному пользователю Firebase загружать файл в облачное хранилище. Я подключил триггер Firebase Cloud Storage через функцию Firebase с помощью onFinalize. При добавлении нового файла в облачное хранилище запускается функция.

Можно ли из функции определить маркер идентификатора мобильного пользователя, чтобы я мог использовать Firebase Cloud Messaging для отправки сообщения обратно? Или мне нужно загрузить файл, как раньше, после завершения загрузки сделать ссылку на загруженный файл и применить к нему метаданные (например, добавить маркер идентификатора пользователя, принадлежащий мобильному пользователю)? После этого мне понадобится триггер Firebase Function для изменений метаданных - когда изменение произойдет, я смогу прочитать токен ID, которому принадлежит недавно загруженный файл.

Мобильный: Java Android

Функции Firebase Cloud: Node.js

1 Ответ

0 голосов
/ 19 февраля 2020

Самый надежный способ сделать это:

  1. Связать маркер устройства с UID пользователя перед загрузкой. Может быть несколько активных токенов устройств на пользователя в зависимости от того, сколько устройств он использует. Это нормально.
  2. Когда файл загружен, также прикрепите метаданные к файлу с UID пользователя. Вы можете убедиться, что это правильно, используя правила безопасности.
  3. В сработавшей функции сопоставьте защищенный UID с ранее сохраненными токенами и отправьте каждому токену сообщение о загрузке.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...