H5网页扫码聚合支付(一)——支付宝

一、通过授权获取auth_code

1、通过CDN方式引入支付宝jsapi

<script src="https://gw.alipayobjects.com/as/g/h5-lib/alipayjsapi/3.1.1/alipayjsapi.min.js"></script>

2、通过getAuthCodeAPI根据主动授权或静默授权获得auth_code

ap.getAuthCode({
  scopes: ['auth_user'],
 // 主动授权:auth_user,静默授权:auth_base。或者其它scope。如需同时获取用户多项授权,可在 scopes 中传入多个 scope 值。
  success: (res) => {
  	res.authCode
  },
});

3、获得auth_code返回给后端换取 access_token、user_id

二、生成tradeNO

根据user_id,二维码id和金额返回给后端,后端会生成一个 tradeNO(支付宝交易号)
注:支付宝H5开发文档给出两种调起收银台的支付方式,我这里用的是使用支付宝交易号进行调起,
详细方法请前往(https://myjsapi.alipay.com/jsapi/native/trade-pay.html)

三、根据tradeNO调起支付宝收银台

  ap.tradePay(
              {
                tradeNO: JSON.parse(data.expend.pay_info).tradeNO
              },
              (res) => {
                // ap.alert(res.resultCode);
                if (res.resultCode == 9000) {
                  // 支付成功
                } else if (res.resultCode == 8000 || res.resultCode == 6001) {
                  // 正在处理中 || 取消
                } else {
                  // 支付失败
                }
              }
            );
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值