# 《小型支付商城系统》第3-5节:对接支付
作者:小傅哥
博客:https://bugstack.cn (opens new window)
沉淀、分享、成长,让自己和他人都能有所收获!😄
# 一、本章诉求
通过引入支付宝支付 sdk,实例化支付对象,完成支付对接。并提供商品交易下单和回调接口。
这里要记住一点,所有不是数据库一次事务提交的操作,都没法保证事务一致性。包括;http接口、rpc接口、mq消息等。这些调用过程,都需要有任务作为补偿处理,保证最终一致性。
他们的失败可能是网络超时,导致在调用过程中发生,也可能是消费时发生进行重试。所以这类接口调用除了有任务保持一致性,还有就是要有唯一幂等字段。确保在重复消费的过程中,也只是有一条记录产生或者发生变更。
# 二、业务流程
如图,本节我们来完成支付宝沙箱对接的流程;
- 创建完成本地订单后,调用支付宝沙箱创建支付订单。
- 在这个过程,如果发生 http 超时失败,那么会有二次用户请求时,检查到
掉单
重新发起创建动作。