收藏
回答

云函数怎么同步执行

框架类型 问题类型 终端类型 AppID 环境ID 基础库版本
小游戏 Bug 工具 wx31efe7c23d620627 weibin-1986 2.0.0

业务大概是:多个用户可能同时去修改A用户的某个数据,但是只能允许一个用户修改成功

这个业务由云函数执行,通过get取出A用户数据,然后先判断是否被人操作过了,如果操作过了,则不可以再操作

未被操作过,则修改数据,update到数据库中。

请问如何做到这个同步。

回答关注问题邀请回答
收藏

1 个回答

  • ·
    ·
    2020-09-03

      try{

        var Result = await db.collection('UserData').doc(Target_openId).get()

        if( Result.data.trees[CIndex]>=5 ) //表示未被修改过

        {

          Result.data.trees[CIndex]-- ;

          //更新

          await db.collection('UserData').doc(Target_openId).update({

            data:{

              trees:Result.data.trees

            }

          })

          return {

            msg:"成功"

          }

        }

        else{

          return {

            msg:"失败"

          }

        }

      }

    2020-09-03
    有用
    回复 2
    • ·
      ·
      2020-09-04
      已解决,使用云数据事务
      2020-09-04
      回复
    • dkh
      dkh
      02-06回复·
      你好像问一下是怎么解决云函数同步的问题,云数据事务是什么,好像没看到
      02-06
      回复
登录 后发表内容
问题标签