美文网首页01-架构
014-移动支付12-SDK设计-整体结构原理与设计

014-移动支付12-SDK设计-整体结构原理与设计

作者: AncientMing | 来源:发表于2017-06-08 22:57 被阅读36次

上一篇:013-移动支付11-支付宝支付-服务器端开发

一、支付总结分析

1、微信支付

  • 服务器:实际上做的事情就是组装支付Model

  • 客户端:解析Model,根据Model调起微信支付

2、银联支付

  • 服务器:实际上就是组装支付Model(组装支付数据)

  • 客户端:解析Model,根据Model调起银联支付

3、支付宝支付

  • 服务器:实际上就是组装Model

  • 客户端:解析Model,根据Model调起支付宝支付

假如再把苹果支付,QQ钱包等也算在内,本质上也是服务器组装Model然后客户端解析Model并且调起支付。

总结:所有第三方支付都是同一个目的

4、以支付宝为案例,细分一下逻辑:

4.1、客户端请求商户服务器,目的:获取支付签名信息支付Model

4.2、客户端服务器访问支付宝服务器

4.3、支付宝服务器返回预支付结果

4.4、商户服务器返回客户端组装支付Model

4.5、商户客户端调起支付客户端

4.6、支付SDK调用支付服务器

4.7、支付宝服务器返回支付结果

4.8、支付SDK回调商户客户端,提示用户(刷新UI)

4.9、支付宝服务器通知商户服务器

注:第4.9步一般会延迟执行。大致流程如上,错误及详细细节不述。

二、分析Model

在查看各种不同平台的参数的时候回发现参数是不一样的。那我们怎么办呢?

1、找相同点,分析并找到所有支付都有的参数,这样就形成了抽象类,也就是基类。(BaseModel或者叫BaseBean)

2、不同点处理:定义差异化Model
差异化的Model继承自BaseModel或BaseBean。(客户端习惯叫Model服务器习惯叫Bean本质都是模型)

以Ping++为例,在设计SDK的时候整体就是这样的。虽然Ping++客户端并没有开源,但是Java服务器端部分代码是开源的,阅读之可以证实就是这么设计的。

三、客户端支付SDK整体架构分析

1、解析Model,调用具体的支付平台

问题来了:我们发现,在使用微信客户端支付时,会调用商户服务器,返回支付Model后再调用微信支付SDK。而在使用银联支付时,也会调用商户服务器,返回支付Model后再调用银联支付SDK。那我们要怎么进行封装呢?SDK又该怎么设计呢?

分析之后,我们可以针对SDK的调用进行设计。

调用自己商户服务器不需要封装,因为会有差异化。

不同服务器,参数支付需要的列表不一致,需求也是不一样!

2、子模块:服务器组装Model解析、异常处理、Log统计、时间点击统计等等子模块不细述了。

整体思路同上即可。
下一篇:015-CFBridgingRelease简析

相关文章

  • 015-CFBridgingRelease简析

    上一篇:014-移动支付12-SDK设计-整体结构原理与设计 一、CFBridgingRelease 把非OC的指...

  • 014-移动支付12-SDK设计-整体结构原理与设计

    上一篇:013-移动支付11-支付宝支付-服务器端开发 一、支付总结分析 1、微信支付 服务器:实际上做的事情就是...

  • 支付流程整体设计

    一、主要思想 无需支付校验,直接查询支付结果 支付流程整体设计,兼容支付宝、微信的支付设计 二、关于支付校验 支付...

  • ceph rbd:总览

    基本原理 整体概念:官方文档:CEPH BLOCK DEVICErbd总体架构和原理:《ceph设计原理与实现》第...

  • RTOS基础(邮箱)

    邮箱的原理与创建 问题概述 设计原理 设计实现 邮箱的获取和释放 设计原理 设计实现 邮箱的清空与删除 设计原理 ...

  • 《支付宝移动设计精髓》读书笔记01

    近期阅读了《支付宝移动设计精髓》,这本书涵盖了支付宝设计团队在产品设计体验设计的实战经验,分别从学设计、做设计、看...

  • RTOS(事件标志组)

    事件标志组的原理与创建 问题概述 设计原理 设计实现 事件标志组的等待与通知 设计需求 设计原理 设计实现 事件标...

  • Android面试题总结(题目+复习链接)

    数据结构 1.栈实现原理 java数据结构与算法之栈(Stack)设计与实现 - CSDN博客 2.链表实现原理 ...

  • 2019-01-05

    移动破碎机的闪光点 移动破碎机底盘采用钢架结构,整体设计紧凑,设备布局合理,一体化组装结构,有采用轮胎式和...

  • 架构设计-支付宝、京东、美团、去哪儿的支付系统架构整体设计详解!

    架构设计-支付宝、京东、美团、去哪儿的支付系统架构整体设计详解!!! 支付产品模块是按照支付场景来为业务方提供支付...

网友评论

    本文标题:014-移动支付12-SDK设计-整体结构原理与设计

    本文链接:https://www.haomeiwen.com/subject/ncztqxtx.html