支付模块开发
锻炼的能力
1.跨业务开发,抽象开发能力 2.拆分微服务和进行double服务化
一、功能介绍
1.支付宝对接
2.支付回调
3.查询支付状态
二、技术目标
1.熟悉支付宝对接核心文档(了解支付宝的配置),配置支付宝的对接需要的参数,调通支付宝支付功能官方Demo
2.解析支付宝SDK对接源码
3.RSA1和RSA2验证签名及加解密
4.避免支付宝重复通知和数据校验
5.natapp外网穿透和tomcat remote debug
6.生成二维码,并持久化到图片服务器
7.支付宝回调中涉及的
下面是线上截取的日志截图:
支付宝的回调要放到request里,我们从request里取出来进到map上,再对map进行处理,打印日志的时候就是打印的map
三、数据表的设计
四、接口设计
1.支付
/order/pay.do
http://localhost:8080/order/pay.do?orderNo=1485158676346
request
orderNo
response
success
{
"status": 0,
"data": {
"orderNo": "1485158676346",
"qrPath": "http://img.happymmall.com/qr-1492329044075.png"
}
}
fail
{
"status": 1,
"msg": "支付宝生成订单失败"
}
2.查询订单支付状态
/order/query_order_pay_status.do
http://localhost:8080/order/query_order_pay_status.do?orderNo=1485158676346
request
orderNo
response
success
{
"status": 0,
"data": true
}
fail
{
"status": 1,
"msg": "该用户并没有该订单,查询无效"
}
3.支付宝回调
/order/alipay_callback.do
request
HttpServletRequest
response
success(支付宝的约定,如果不返回这个内容就会重复的回调)
success
fail
failed