微信支付回调反复发模板消息的问题

    在我们做微信开发过程中,使用微信支付的回调处理业务逻辑时,会遇到模板消息被反复发送的问题,有时连着发七八条或者更多。

    其原因在于我们没有进行相应的逻辑判断,没有告诉微信,不需要反复回调了。

    我前面开发的一个项目,客户充了一次钱(1000元),反复回调后,给客户连着发了十条消息,客户的充值余额剩余11000多。吓死宝宝了!!!

    好歹是做测试,要不这可玩大了。

    那么我们如何处理这种情况呢?

    最主要的就是对业务的逻辑进行处理。也就是对订单的支付状态进行判断。如果订单支付状态为已支付,则die掉。

    直接上代码吧!TP开发的。    

 $payInfo = D("Payrecord")->where("payrecord_receipt = '$out_trade_no'")->find();
        $payrecord_status = $payInfo['payrecord_status'];
        if($payrecord_status=='已支付'){
          die;
        }

    然后问题就解决了。并不是什么网上说的,微信服务器响应的问题,找腾讯去吧之类的。

    开发过程中的业务逻辑、严密性,还是很重要的。

猜你喜欢

转载自blog.csdn.net/liuzhaoyun/article/details/80372940