支付宝支付的流程

首先提交完订单以后请求支付服务接口发起订单服务的接口调用,请求订单信息返回给前端,跳转到支付界面,我就以支付宝为例。

 第一步:点击支付宝图标发起支付,请求支付宝接口,创建支付,在创建支付的接口中主要做三个校验。(校验订单是否为未支付和已超时)(2)创建支付记录集到数据库中,支付状态为未支付。(3)请求阿里支付界面

请求阿里支付我做了一个动态工厂,然后把工厂对象注入到容器中,通过阿里服务对工厂对象进行调用。
第二步:在支付宝支付界面输入用户名和密码,然后输入支付密码,也可以扫码支付。


第三步:在支付宝完成处理交易之后执行同步回调和异步回调。
(1)同步回调:同步回调就是用户成功之后有浏览器发起请求,跳转到登录成功界面。

(2)异步回调:异步回调就是用户支付成功之后由阿里服务器发起,向我们系统的支付服务发起请求,通知支付成功,然后支付服务完成后续的订单的修改订单状态、修改支付记录状态、扣减库存的操作。
tips:在异步回调时,为了防止支付宝重新调用支付异步回调,我通过redis中的一个String数据结构,通过setNX存储异步回调逻辑,用支付宝通知Id作为唯一的key进行存储,value随意。

我存的是订单的ID

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值