首页 > 解决方案 > 我可以避免触发 Google Cloud 功能吗?

问题描述

在我的应用程序中,每次用户删除他/她在帖子中发表的评论时,都会触发云功能来更新用户集合中用户记录中的某些属性。喜欢:评论删除时,更新用户记录。

但是,当删除用户的帐户并因此删除其评论时,会触发该云功能,因为正在删除评论。

因为该帐户正在被删除,所以我不需要用户集合中的更新发生。

如果满足条件,是否有办法避免触发 Google Cloud Function,例如“如果删除帐户,则返回 null”?

我可以将参数传递给函数,以便将其用作条件吗?

任何帮助将不胜感激。

标签: google-cloud-firestoregoogle-cloud-functions

解决方案


您无法避免触发它们,但您可以通过检查此处的类型来检测是否comment被用户删除或另一个云功能正在“清理”被删除的用户的用户数据:auth

.onUpdate((eventSnapshot, context) => {
    if (context.authType === 'ADMIN') {
      // This cloud function is triggered by another cloud function so we exit here
      return null
    }

如果您在使用云功能删除用户时删除所有用户数据,您可以使用此方法仅退出将触发的其他云功能。


推荐阅读