微信支付JSSDK的使用

2018-09-25  本文已影响0人  imxiaochao

微信内公众号支付

wx.chooseWXPay({
    timestamp: timestamp, 
    // 支付签名时间戳,注意微信jssdk中的所有使用timestamp字段均为小写
    // 但最新版的支付后台生成签名使用的timeStamp字段名需大写其中的S字符
    nonceStr: nonceStr, // 支付签名随机串,不长于 32 位
    package: package, 
    // 统一支付接口返回的prepay_id参数值,提交格式如:prepay_id=***)
    signType: 'MD5', 
    // 签名方式,默认为'SHA1',使用新版支付需传入'MD5'
    paySign: paySign, // 支付签名
    success: function (res) {
        // alert('成功:'+JSON.stringify(res))
        $.hideLoading()
        callback&&callback(res)
    },
    fail: function (res) {
        $.hideLoading()
        alert('失败:'+JSON.stringify(res))
        toast("支付失败!请检查微信配置");
    },
    cancel: function (res) {
        //支付取消
        $.hideLoading()
        toast("已取消支付!");
    }
})

以上需注意的点是:
1) paySign 是以appId, timeStamp, nonceStr, 
package, signType 5个值在后端进行签名,需要注意大小写。

2、nonceStr(随机字符串) 使用的是后台同一下单时使用的同一个随机串
3、公众号支付必须传openid

微信H5支付

后端调用微信H5支付的统一下单接口,微信接口返回跳转url,前端直接跳转微信返回的url即可

以上均需注意:微信商户后台中必须设置好支付允许目录,否则会有报错现象。

上一篇下一篇

猜你喜欢

热点阅读