游戏内统一支付系统设计与实现
来源:互联网 发布:逆战刷箱子淘宝 编辑:程序博客网 时间:2024/06/05 02:10
统一支付流程设计如下:
客户端:
服务器端:
简单解释一下:
- 每次支付开始,都要让服务器生成一个订单作为此次支付的记录,订单的id即为 bill_id。订单有4中状态:订单生成,支付失败,支付成功,发货成功。
- pay_server即为统一支付系统的服务器端,考虑到调用量和方便调试,使用了简单的http协议+json+sign的方式
对于服务器内部,唯一麻烦的一点是,《等待pay_server支付结果通知》这个接口。因为这个http请求需要支持挂起,在第三方支付服务器通知了pay_server之后,pay_server 根据通知里面透传的bill_id 将订单状态修改后,再给客户端结果。
客户端:
基于这一点,我们就可以做一个同一个工厂函数,将这个工厂函数类封装成一个jar包。
同时,我们对每一种支付方式,都封装出一个统一的接口,而工厂函数返回的即这样一个接口的实现。当某一种支付方式的封装类不存在时,就捕获这个异常,并返回NULL。
统一接口的代码如下:
工厂函数的代码如下:
上面的方法是只封装了一个factory函数的jar包,其他的对每种支付的封装还是走源码的方式。
阅读全文
1 0
- 游戏内统一支付系统设计与实现
- 游戏后台定时器系统设计与实现
- 游戏日志系统设计与实现
- 一个典型PHP支付系统的设计与实现
- 一个典型PHP支付系统的设计与实现
- PHP支付系统的设计与实现典型案例
- 支付系统设计:应用内支付(五)
- iOS游戏开发三:苹果内支付实现 In-app
- iOS游戏开发三:苹果内支付实现 In-app
- 支付宝统一收单接口实现支付宝支付
- Niushop统一支付接口设计思路
- andy学java系列之J2ME的移动支付系统的设计与实现
- java系列之J2ME的移动支付系统的设计与实现
- 统一身份认证子系统详细设计与部分实现
- 基于PHP的统一检索系统的设计与实现
- java平台统一异常框架的设计与实现
- java平台统一异常框架的设计与实现 .
- java平台统一异常框架的设计与实现
- 后端修改密码的简单弹窗
- 自定义toast
- Linux上nginx安装配置(配置虚拟主机,静态资源)
- Android swiperefreshlayout 实现上拉刷新 加载
- 点击头像,调用相机,相册改变头像
- 游戏内统一支付系统设计与实现
- Spark存储与读取文件方法小结
- Twemproxy+ssdb双主配置
- eXtremeDB内存数据库7.0新版本的强大功能加强了它在物联网的关键作用
- Java并发编程(四)未处理异常、线程池和ThreadLocal类
- 多线程-共享全局变量(python版)
- 事务
- 前端笔记
- Android的ProgressBar详解