谷歌云功能是否可以在完成2个或更多其他功能时触发



我不确定该搜索什么,因为我不知道这适合哪个主题。

我的想法有点像JS Promise.all([…](.then((,但适用于云函数。

例如,函数A取决于函数B和C的成功完成,这两个函数彼此不知道并同时运行。

我想这样的东西在本地是不可用的?

我唯一能想到的是保留某种持久寄存器和一个中间函数,该函数在B和C完成时启动,检查组是否完成,并在完成时触发A。

单独使用云函数是不可能的。该系统是无状态的;存储器";每个函数调用会发生什么。

你必须做的是让另一个产品保持状态,该状态将负责在前两个功能完成后触发第三个功能。实现这一点的一种方法是使用Firestore文档来存储每个函数的完成状态。职能部门B和C必须就一些识别其工作的共享唯一ID达成一致。该ID可以用作存储每个函数的完成状态的集合中文档的ID——函数必须在完成之前将其状态写入该文档。然后,您可以编写一个Firestore触发器,该触发器在该集合中的文档发生更改时被调用。然后,该功能将检查文档以查看B和C是否完整,并处理运行A的过程。

最新更新