小程序微信支付,订单支付 wx.requestPayment 的使用

goPay() { // 支付
    const openId = wx.getStorageSync("code") // 获取微信的code作为open ID传到后台
    console.log(openId)
    // payType后台规定的支付方式,orderId 订单id
    http.postRequest('调后台的支付接口', { payType: 2, orderId: this.data.detail.id, code: openId },
      (res) => {
        if (res && res.code == 1) {
          var _r = res.data
          wx.requestPayment({ //调起支付
            'timeStamp': _r.timeStamp,
            'nonceStr': _r.nonceStr,
            'package': _r.packageValue,
            'signType': _r.signType,
            'paySign': _r.paySign,
            'success': function (res) { // 接口调用成功的回调函数
              console.log(res);
              //TODO  跳转订单
              wx.navigateTo({
                url: '/pages/myOrder/myOrder?type=1&list=2',
              })
            },
            'fail': function (res) { // 接口调用失败的回调函数
              console.log('fail:' + JSON.stringify(res));
            }
          })
        }
      },
      (err) => {
        console.log(err);
      });
  },

效果截图:

在这里插入图片描述
记录好了,还有十三天过年了,祝福!

小程序支付主要使用的JS代码是wx.requestPayment()。下面是对其的详细解释: wx.requestPayment()是小程序用于发起支付的API。通过调用该API,用户可以使用微信支付完成商品购买等操作。该API的参数主要包括以下几个: timeStamp:时间戳,表示生成支付签名的时间。 nonceStr:随机字符串,用于生成支付签名的随机串。 package:统一下单接口返回的 prepay_id 参数值,预支付会话标识,用于后续接口调用使用,该值需要进行 urlEncode。 signType:签名算法,目前支持 HMAC-SHA256 和 MD5,默认为 MD5。 paySign:支付签名,由商户自行生成,具体生成方法参考微信支付开发文档。 以上参数都需要通过后台接口微信支付进行协商和生成,然后传递给前端小程序进行使用。 当调用wx.requestPayment()时,小程序会自动调起微信支付界面,展示给用户进行支付。用户完成支付后,微信会返回支付结果给小程序,通过调用该API的success、fail和complete回调函数来处理支付结果。 在使用wx.requestPayment()时,需要注意以下几点: 1. 需要先调用wx.requestPayment()前准备好支付参数,确保支付参数的正确性和有效性。 2. 支付参数的获取需要与后台进行交互,因此需要确保与后台进行数据传输和处理的接口正常运行。 3. 若支付失败,需要根据具体错误码和错误信息进行处理,如若用户取消支付,则可以给出相应的提示等。 总之,wx.requestPayment()是小程序用于发起支付的重要API,通过合理调用和处理,可以实现小程序支付功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值