当前位置: 首页 > 知识库问答 >
问题:

Firestore:如何从服务器端获取更新流?

陈龙野
2023-03-14

TDR:我需要在自己的后端拥有Google Cloud Functions。

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

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

就目前而言,可以用云函数来解决这个问题,但这种解决方案是不可接受的,因为事件和函数调用之间存在延迟,并且缺乏调用顺序。

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

这项工作很好,但看起来过于复杂。有没有办法从我的后端订阅以获取firestore所有文档的所有更新?理想的解决方案是订阅更新,就像在云功能中一样:https://firebase.google.com/docs/functions/firestore-events?authuser=0

共有1个答案

屈博
2023-03-14

客户端和服务器SDK没有此功能。Cloud Functions实际上是您获得FiRecovery中符合通配符模式的更改通知的唯一方法。

 类似资料:
  • 我想用retforIt从服务器得到响应。下面是一些代码: 怎么了?我在哪里可以找到改装文档?是什么?请帮忙

  • 问题内容: 我了解可以用来在执行数据库操作时在Firestore服务器中生成时间戳记。我想了解如何从Firestore数据库中的特定设备中以没有任何数据库相关操作的格式获取时间戳。 问题答案: 因此,假设您拥有一个如下所示的数据库架构: 要获取属性值作为对象,请使用以下代码行: 请记住,为了获得该对象,应该按照以下帖子中我的回答中的说明设置日期: 在Firebase Firestore上Serve

  • 问题内容: 您经常会看到Node的示例hello world代码,该代码创建Http Server,开始侦听端口,然后执行以下操作: 但理想情况下,您希望这样做: 如何在调用前不将服务器号存储在变量中的情况下检索服务器当前正在侦听的端口? 我之前已经看过这件事,但是在Node文档中找不到。也许这是表达的特定内容? 问题答案: Express 4.x答案: Express 4.x(根据下面的Tien

  • 对于带有PKCE的Oauth 2.1,官方示例Spring授权服务器默认返回一个access_token和id_token https://github . com/spring-projects/spring-authorization-server/tree/main/samples/default-authorization server endpoint/oauth2/token有没有可能

  • 我正在尝试访问我在ftps服务器中创建的路径中的一个文件夹,但它没有返回任何东西,它正在连接但没有返回任何东西,如果我将服务器配置更改为ftp,它可以工作。我使用的是FileZilla服务器,其配置如上所示。 SSL/TLS 服务器关于连接的日志收到一条消息,我不知道它是否有用: 227进入被动模式 列表 NLST 需要521个PROT P 退出 知道怎么了吗? 谢谢大家!

  • 问题内容: 我有一个向服务器发送消息的客户端套接字,每当服务器收到消息时,我都希望在客户端得到确认。是否有可能得到那个认可。我使用apache mina开发了客户端。提前致谢。 问题答案: TCP中没有消息,只有字节流。有一个内部ACK机制,用于跟踪已正确接收到多少流,但应用程序不可用。如果您需要服务器的确认,则服务器必须发送该确认。