收藏
回答

用户短时间内重复多次注册怎么回事?

小程序内要统计用户数量,但是发现有相同用户重复出现的情况!

于是用openID分类查看,的确是同openID的存在多个用户,怎么回事?是用户多次点击注册,重复提交吗?开始我以为是这样的,于是改进了注册页面,点击一次注册后就会自动跳转到首页,可是问题还是存在。

于是我查看其中的一个用户,对比他多次注册的不同之处,发现只有注册时间不同,而且时间挨得特别近,微秒范畴,这就不太可能是人工造成的了!

注册的代码如下:

//添加新注册用户到数据库
  upload(filepath) {
    var that = this
    console.log('filepath:', filepath)
    wx.cloud.database().collection('login_users').add({
      data: {
        avatarUrl: filepath,
        nickName: that.data.name,
        myTeam_id: '',
        myTeamName: '',
        user_level: 0,
        admin_level: 0//管理员级别
        _createTime: (new Date()),
      },
      success(res) {
        console.log('用户数据已新增入数据库', res)
        wx.showToast({
          title: '注册成功!',
          icon'success',
          duration: 1500
        })

        app.globalData.userInfo = {
          avatarUrl: filepath,
          nickName: that.data.name,
          myTeam_id: '',
          myTeamName: '',
          user_level: 0,
          admin_level: 0 //管理员级别


        }
        app.globalData.isLogin = true //已经注册过了
        console.log('1111app.globalData.userInfo', app.globalData.userInfo)


      },
      fail(fai) {
        wx.showToast({
          title: '注册失败!',
          icon'error',
          duration: 2000
        })
      }
    })
    wx.switchTab({
      url: '/pages/index/index'
    })

求大神指点!!!!!!!!!!!!!!!!!!!

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

2 个回答

  • 那一抹笑😃 穿透阳光
    那一抹笑😃 穿透阳光
    2023-04-08

    是不是注册的时候程序执行中,用户多次点击,程序执行需要一定的时间,这个时间内,用户点击了多次,应该拦截一下

    2023-04-08
    有用 1
    回复 4
    • 张国平
      张国平
      2023-04-08
      到是有这个可能,但我在调用数据库之前做过判断,如果已注册过,就是更新用户信息,若没有注册过才添加新用户。出现添加重复用户,肯定是多次调用了添加程序。
      2023-04-08
      回复
    • 张国平
      张国平
      2023-04-08
      因为是使用的新版方法获取用户信息,即“头像昵称填写能力”的方式,可能有用户没有同时填入头像和昵称,就点击了提交按钮,但没有反应,就会快速连续点击,多次执行了添加程序。
      2023-04-08
      回复
    • 张国平
      张国平
      2023-04-08回复张国平
      经过测试,用户没有同时填入头像和昵称,点击提交按钮,程序不会向下执行!快速点击也不会重复提交
      2023-04-08
      回复
    • 那一抹笑😃 穿透阳光
      那一抹笑😃 穿透阳光
      2023-04-08回复张国平
      是头像和昵称都存在的时候,用户点击提交,注册请求需要时间,虽然很短,但是在注册的这个时间段,用户快速点击了很多次,所以你拦截一下,点击一次提交之后,就不能在点击了,等请求回来之后才能在点击第二次
      2023-04-08
      回复
  • 陈宇明
    陈宇明
    2023-04-08

    快速点击问题

    2023-04-08
    有用
    回复
登录 后发表内容