微信支付

2018-07-09  本文已影响7人  指尖轻敲

微信支付API文档

示例代码

// 以下代码可以放在一个点击事件里面,所需参数从服务端获取
function onBridgeReady(){
    WeixinJSBridge.invoke(
        'getBrandWCPayRequest',
        {
            "appId": appId,
            "timeStamp": timeStamp,
            "nonceStr": nonceStr,
            "package": package,
            "signType": signType,
            "paySign": paySign
        },
        function(res){
            if(res.err_msg == "get_brand_wcpay_request:ok"){
                alert("您已支付成功");
            }
        }
    );
}
if(typeof WeixinJSBridge == "undefined"){
    if(document.addEventListener){
        document.addEventListener("WeixinJSBridge",onBridgeReady,false);
    }else if(document.attachEvent){
        document.attachEvent('WeinxinJSBridgeReady',onBridgeReady);
        document.attachEvent('WeinxinJSBridgeReady',onBridgeReady);
    }
}else{
    onBridgeReady();
}

JS API的返回结果get_brand_wcpay_request:ok仅在用户成功完成支付时返回。get_brand_wcpay_request:cancel(支付过程取消)或者get_brand_wcpay_request:fail(支付失败)可以统一处理为支付失败,不用细分。

常见报错

微信web开发工具中报错{"errMsg":"没有此SDK或暂不支持此SDK模拟"}

微信开发者工具不支持支付,用手机测试就可以了。

调用支付JSAPI缺少参数timeStamp

这里注意所有参数的值都是字符串类型,这里接收到的时间戳是个数字,用toString()方法转换。

支付验证签名失败

这个一般就是后台给传过来的签名不对。

上一篇下一篇

猜你喜欢

热点阅读