Можно ли отменить операцию записи Firestore? - PullRequest
0 голосов
/ 07 апреля 2019

Я работаю над приложением отслеживания местоположения.Я буду обновлять данные о местоположении пользователя в базе данных каждые 10 минут.Например, исходное местоположение - A, целевое местоположение - D.

Если пользователь достиг местоположения B, я обновлю последнее местоположение до B. Когда пользователь достигнет C и затем D, предположим, что в случае потери интернет-соединения произойдет потеря,детали местоположения C и D. не будут сохранены в базе данных.

Тогда, если интернет работает, он может записать сначала D, а после местоположения C - не в правильном порядке.поэтому последнее местоположение в базе данных будет C вместо D.

Есть ли какое-нибудь решение?

1 Ответ

0 голосов
/ 08 апреля 2019

Нет способа отменить ожидающую запись.

Я могу придумать два варианта:

  1. Используйте транзакцию базы данных и основывайте новое значение для документа на существующем значении.
  2. Используйте правила безопасности, чтобы разрешить только допустимые переходы. Типичным подходом здесь может быть добавление метки времени (на стороне клиента) к каждой операции записи и отклонение записи, когда метка времени слишком старая.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...