Функции Firebase для всех операций записи - PullRequest
1 голос
/ 09 марта 2019
  • У меня есть что-то вроде приложения для социальных сетей со сложными операциями записи, например, последующим запросом.

  • Правила Firestore написаны так, что никто не может что-то записать в мою базу данных.

  • Прямо сейчас Если кто-то хочет следовать за пользователем, клиент вызывает облачные функции с аргументом uid, затем облачная функция выполняет транзакцию с серваломОперации записи.

  • Я сделал это, потому что дает преимущество в том, что изменяет транзакции в любое время, поэтому не требуется обновление клиента.

Итак, мой вопрос: Разве плохо использовать облачные функции для всех операций записи в моем приложении, и я упустил недостаток этого метода?

1 Ответ

0 голосов
/ 09 марта 2019

Разве плохо использовать облачные функции для всех операций записи в моем приложении?

Это неплохо по определению, но по определению также не хорошо.Все зависит от вашего варианта использования и вашей реализации.

Несколько моментов, на которые следует обратить внимание:

  • Правила безопасности для ваших мутаторов данных теперь по существу закодированы в вашемОблачные функции.Так ваши облачные функции защищены?Вы уверены, что звонить им могут только авторизованные пользователи?

  • Рассматривали ли вы возможность позволить своим клиентам записывать свои запросы «следуй за этим пользователем» в специальную коллекцию «клиентские запросы» в Cloud Firestore?У вас может быть возможность записи функций Cloud Functions в эту коллекцию, которая имеет свои преимущества.

  • Например: поскольку клиенты пишут в Firestore в этом сценарии, их операции записи не завершатся неудачно, когда онинаходятся в автономном режиме, но вместо этого отправляются на сервер (и обрабатываются там), когда они снова в сети.В вашем текущем сценарии вы должны будете реализовать такую ​​логику повтора самостоятельно.

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