uniapp 唤起微信/支付宝支付

445 阅读1分钟

微信小程序唤起支付

wx.requestOrderPayment({
    timeStamp: '',  // 时间戳,从 19701100:00:00 至今的秒数,即当前的时间
    nonceStr: '',  // 随机字符串,长度为32个字符以下
    package: '',  // 统一下单接口返回的 prepay_id 参数值,提交格式如:prepay_id=***
    signType: 'MD5', 
    paySign: '',  // 签名,具体见微信支付文档
    success: res => {
        uni.showToast({
            title: '支付成功'
        });
    },
    fail: res => {
        this.flag = false;
        if (res.errMsg ==
            'requestOrderPayment:fail cancel') {
           uni.showToast({
                title: '您已取消支付'
            });
        } else {
            uni.showModal({
                content: '支付失败,失败原因: ' + res
                    .errMsg,
                showCancel: false
            });
        }
    }
});

uniapp唤起微信支付

uni.requestPayment({
    "provider": "wxpay", 
    "orderInfo": {
        "appid": "wx499********7c70e",  // 微信开放平台 - 应用 - AppId,注意和微信小程序、公众号 AppId 可能不一致
        "noncestr": "c5sEwbaNPiXAF3iv", // 随机字符串
        "package": "Sign=WXPay",        // 固定值
        "partnerid": "148*****52",      // 微信支付商户号
        "prepayid": "wx202254********************fbe90000", // 统一下单订单号 
        "timestamp": 1597935292,        // 时间戳(单位:秒)
        "sign": "A842B45937F6EFF60DEC7A2EAA52D5A0" // 签名,这里用的 MD5/RSA 签名
    },
    success(res) {},
    fail(e) {}
})

uniapp唤起支付宝支付

uni.requestPayment({
    provider: 'alipay',
    orderInfo: 'orderInfo', //微信、支付宝订单数据 【注意微信的订单信息,键值应该全部是小写,不能采用驼峰命名】
    success: function (res) {
        console.log('success:' + JSON.stringify(res));
    },
    fail: function (err) {
        console.log('fail:' + JSON.stringify(err));
    }
});

参考链接:

developers.weixin.qq.com/miniprogram…

uniapp.dcloud.net.cn/api/plugins…