项目中做到鸿蒙app下单支付,记录一下支付流程

支付宝支付

如果是app

  1. 调用后端接口,后端会生成一个订单号。
  2. 调用支付接口jspay,传入订单号,后端会返回一个支付链接。
  3. app通过支付链接,跳转到支付宝支付页面。
  4. 回到app,判断已经点击过支付(模拟从支付宝回来),跳转支付结果页面,查询支付结果的接口,如果返回成功则展示支付成功信息。否则调3次,结果还是失败就展示失败信息。

如果是web

  1. 调用后端接口,后端会生成一个订单号。(同上)
  2. 调用支付接口,传入订单号,后端会返回一个支付链接。(同上)
  3. 把支付链接转成一个二维码,可供手机扫码。(用了一个插件qrcode.vue)
  4. 轮询查支付结果。当返回成功时,跳转成功页。否则一直轮询,因为不知道用户什么时候扫码。

微信支付

微信与支付宝不同的是微信的支付链接是固定的,而支付宝的支付链接是变化的。

如果是web

  1. 调用后端接口,后端会生成一个订单号。
  2. 支付链接自己拼接好。
    微信的支付链接:https://www.beeselect.net/miniprogram?orderNo=&totalAmount=&goodsDesc=店铺续费&tradeType=T_MINIAPP&orderType=6
  3. 把支付链接转成一个二维码,可供手机扫码。
  4. 轮询查支付结果。当返回成功时,跳转成功页。