希望大神给我描绘一下整个支付的过程。
1 客户端向业务服务端提交订单,业务服务方生成一个订单号
2 客户端根据订单号生成支付宝所需要的参数,向支付宝的支付接口提交
3 支付宝的支付接口返回同步数据。
4 支付宝服务端请求回调函数,这个回调函数是在业务服务方的,这个请求是异步的。
5 客户端根据用户订单号来去业务服务方确认是否已经支付成功。
这是我找资料看到的过程 ,我想知道在这些环节服务端都干了什么,是怎么去做到的。
毕业论文催的紧,论文项目涉及的支付环节从来没做过,APP客户端服务端都得自己来,希望各位大神指点一下!谢谢了!
三两句话就说得清楚了。
1.客户端选购商品,提交商品信息到服务端(Client->[{商品1,1件,¥100},{商品1,1件,¥100}]->Server)
2.服务端订单入库生成订单号反馈给客户端(Server->[2333333,¥200]->Client)
3.调用支付宝SDK携带一些参数(23333333,¥200, http://domain/payment_notify )(SDK干了什么只有支付宝知道)
4.用户支付完成,支付宝服务器通知应用服务器(HTTP访问http://domain/payment_notify),服务器做验证判断支付是否成功。
5.支付完成后,回到APP,APP收到通知,访问服务器接口验证是否成功。
服务端要做的事:1.生成订单号,处理业务逻辑;2.根据支付宝服务端发过来的异步请求处理你自己的逻辑,然后给支付宝返回success,不然支付宝会重复发送多次(好像是6次)
服务端的作用主要是异步接收支付宝发送的反馈,并给支付宝返回success,如果不是success,支付宝会根据一定的时间策略不停重发。
请详见淘宝秒杀设计: http://www.zhihu.com/question/20496392