收藏
回答

用户支付成功后,提示信息支付成功,但是也删除了订单信息,只发生过一次,有什么原因会造成这样???

mpvue.requestPayment({
              timeStamp: resovle.data.timeStamp,
              nonceStr:resovle.data.nonceStr,
              package:resovle.data.package,
              signType: "MD5",
              paySign:resovle.data.paySign,
              success(res2) {
                wx.showToast({
                  title: '支付成功',
                  icon: 'success',
                  duration: 1500
                })
                wx.setStorageSync('paysuccess','success')
                wx.setStorageSync('payAddress',self.selectAddress)            
              },
              fail(rej2) {
                wx.showToast({
                  title: '支付失败,请重新操作',
                  icon:'none',
                  duration: 1500
                })
                console.log(self.JiaGouNum);
                // 失败 删除订单   删除订单信息
                request('/claim/deleteClaimInfo','POST',{
                  claimId:resovle.data.claimId
                },{
                  'Content-Type':'application/x-www-form-urlencoded'
                })
                .then(res3=>{
                  if (res3.data.code==='200') {
                    console.log('支付失败,删除订单信息成功');
                  }
                })

              }

})





用户支付成功后,提示信息支付成功,但是也删除了订单信息,只发生过一次,有什么原因会造成这样???


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

2 个回答

  • hello
    hello
    2020-03-23

    同样使用 mpvue 开发小程序.

    同样也触发了相同的问题:

    我们的支付逻辑也是根据返回的 支付状态来进行下一步操作.

    全流程如下:

    1. 1.调用自己的订单生成一个 唯一的订单, 货物库存减一
    2. 2.使用这个订单信息, 调起 wx.requestPayment
    3. 3.如果requestPayment:fail cancel, 触发下一步操作 -- 货物库存加一
    4. 4.如果requestPayment:ok, 触发下一步操作 -- 正常走其他流程


    以前测试和生产环境, 3 和 4 都不会同时出现.

    但是, 现在出现一个用户, 1 - 2 - 4 (支付成功之后), 6分钟之后又调起了 3 (取消操作)

    希望官方给出一个比较明确的答案....

    2020-03-23
    有用
    回复 5
    • Smlie
      Smlie
      2020-03-24
      未解决 现只发生过一次 测试正常
      2020-03-24
      回复
    • Smlie
      Smlie
      2020-03-24
      用户太少 无法复现
      2020-03-24
      回复
    • hello
      hello
      2020-03-24回复Smlie
      好吧...谢谢 我们这边也是, 用户倒是不少, 可是只是出现了一次
      2020-03-24
      回复
    • hello
      hello
      2020-03-24回复Smlie
      我们目前是这样处理的, cancel请求发出的时候, 后端也得再校验一次订单状态...总的来说, 就是前端的消息都是不可靠的
      2020-03-24
      回复
    • Smlie
      Smlie
      2020-03-24
      钱都扣了····莫名其妙的返回失败~  逻辑主要还是在后端
      2020-03-24
      回复
  • 微信支付技术助手1
    微信支付技术助手1
    2019-11-29

    删除订单信息?具体是什么意思?不是很明白,能详细描述吗

    2019-11-29
    有用
    回复 3
    • Smlie
      Smlie
      2019-11-29
      现在出现的情况:用户支付成功之后,回调success里也成功执行,但是日志中显示,有一个用户在两分钟之后,又执行了fail的回调函数
      2019-11-29
      回复
    • Smlie
      Smlie
      2019-11-29
      先执行完success 隔一会儿执行了fail
      2019-11-29
      回复
    • hello
      hello
      2020-03-23
      遇到同样的问题, 麻烦看一下, 谢谢
      2020-03-23
      回复
登录 后发表内容