与你有伴系统开发源码(平台、搭建、APP)
上门陪玩app开发,软件搭建,程序制作、系统设计囜匇乣
我们是软件开发公司!软件开发公司!软件开发公司!不是此平台方!请熟知,以下分享的内容为个人观点,有需要做软件的朋友请联系······
游戏陪玩app源码中主要的变现方式之一就是游戏约单功能中的计时付费,虽然下单流程比较简单只包含提交订单和支付两个步骤,但服务端中支付的实现涉及的环节就比较复杂了,像支付中心与第三方渠道的交互,支付成功后的异步通知,支付中心订单状态的更新等。
为了保证用户的游戏约单体验,我们必须要做好支付环节的相关开发,针对可能出现的问题,提前做好预防,一般在游戏陪玩app源码完整的支付流程中,常见的问题有两种,一种是掉单,一种是订单重复提交。
一、防止掉单的处理方式
1、游戏陪玩app源码开发时,在支付订单的过程中添加一个“支付中”的中间状态,这样当订单在进行支付操作时,首先检查是否存在“支付中”的同一订单,当支付完成后再将订单状态更新为“支付成功”。
2、在游戏陪玩app源码的支付中心中,可以设置一个超时时间,当超过设置的时间后仍没有得到支付成功的反馈,则调用相关接口进行订单支付的查询,对于查询不到结果的订单提交异常反馈。
3、除了在支付中心设置超时时间外,还可以在业务系统中添加超时查询,需要提前将发起支付的订单统计至一张表中,当出现超时订单需要进行查询时,利用定时任务去扫描。
4、支付中心在得到某一订单的支付结果后,需要将结果同步至业务系统,如果选择直接调用的方式实现订单数据的同步,需要添加重试。
5、无论是游戏陪玩app源码的支付中心还是业务系统,在接收到订单支付通知时,只处理一次该订单的相关消息,其余的则直接忽略。
二、防止订单重复提交的处理方式
在游戏陪玩app源码中创建的订单,先利用订单信息计算出哈希值,如果redis中有相对应的key则不允许重复提交,如果redis中没有相对应的key,则生成一个新key放到redis中设置个过期时间,然后进行订单的创建,在设置的时间范围内不允许重复提交。