【问题标题】:Firestore: how can I get stream of updates from a server side?Firestore:如何从服务器端获取更新流?
【发布时间】:2019-03-29 02:36:39
【问题描述】:

tldr:我需要在自己的后端安装 Google Cloud Functions。

我编写应用程序,它使用 firebase(尤其是 firestore)作为我自己在 nodejs 上编写的后端和客户端应用程序之间的传输层。

有时,我需要在后端捕获来自客户端的一些事件,但我想避免直接对我的后端执行 http 查询(因为我需要捕获离线状态和其他问题)。最好在 firestore 文档中进行一些更改,在我的后端捕获这些更改并执行一些业务逻辑。

目前来说,可以用Cloud Functions解决,但是这个解决方案是不能接受的,因为事件和函数调用之间有延迟,而且没有调用顺序。

目前在我的项目中使用的另一个解决方案是对 firestore 文档进行一些更改,并将称为“事件”的额外文档添加到其他集合中。在服务器端,我使用 firebase-admin sdk 订阅该“事件”集合并获取它的实时更新。

这项工作很棒,但看起来过于复杂。有什么方法可以从我的后端订阅以获取 firestore 的所有文档的 all 更新?理想的解决方案是订阅更新,就像在 Cloud Functions 中所做的那样:https://firebase.google.com/docs/functions/firestore-events?authuser=0

【问题讨论】:

    标签: firebase google-cloud-firestore


    【解决方案1】:

    客户端和服务器 SDK 没有此功能。 Cloud Functions 确实是您在 Firestore 中获得与通配符模式匹配的更改通知的唯一方法。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-09-25
    • 2015-08-07
    • 2018-08-23
    • 2021-01-02
    • 1970-01-01
    相关资源
    最近更新 更多