Поток событий REST базы данных Firebase в реальном времени: не загружать все дерево - PullRequest
0 голосов
/ 05 января 2020

Я использую API REST базы данных Firebase Realtime для потоковой передачи событий с сервера при загрузке данных (см. https://firebase.google.com/docs/reference/rest/database#section -streaming-cancel )

Однако при запуске Поток событий, он всегда загружает все дерево. Мне это не нужно, я только хочу получать живые изменения. Пример:

GET https://[PROJECT_ID].firebaseio.com/database.json

// I want to get rid of this event
event: put
data: {"path": "/", "data": {...}}  // very large JSON tree

// I want to keep subsequent events, to entries changed in that tree:
event: put
data: {"path": "/entry42", "data": {...}}  // small JSON tree, ok

Есть ли способ указать базе данных пропустить первое событие? Мне не нужны эти данные (как получить текущее состояние другим, гораздо более эффективным способом). Я хочу только живые изменения данных.

1 Ответ

1 голос
/ 05 января 2020

База данных реального времени не имеет смысла «только то, что изменилось с момента моего последнего запроса». Это просто не вопрос, который вы можете сделать. Вместо этого вы можете использовать что-то вроде временной метки, чтобы определить, что нового, и запросить базу данных, используя эту временную метку, чтобы найти только те узлы, которые новее последней временной метки, которую вы использовали для предыдущего запроса.

...