web開發中的支付寶支付和微信支付

https://www.jianshu.com/p/155757d2b9eb

 

 

<!-- wxPay --SDK-->
<script src="https://res.wx.qq.com/open/js/jweixin-1.4.0.js"></script>




goWXPay(obj){
        //wxpay
        var pays_appId = GetQueryString("appId");
        var pays_nonceStr = GetQueryString("nonceStr");
        var pays_package = GetQueryString("package");
        var pays_signType = GetQueryString("signType");
        var pays_timeStamp = GetQueryString("timeStamp");
        var pays_paySign = GetQueryString("paySign");

        if(pays_package && pays_paySign){//wxPay status
            wx.config({
                debug: false, // 開啓調試模式,調用的全部api的返回值會在客戶端alert出來,若要查看傳入的參數,能夠在pc端打開,參數信息會經過log打出,僅在pc端時纔會打印。
                appId: pays_appId, // 必填,公衆號的惟一標識 wx4943f6480a79a436
                timestamp: pays_timeStamp, // 必填,生成簽名的時間戳
                nonceStr: pays_nonceStr, // 必填,生成簽名的隨機串
                signature: pays_paySign,// 必填,簽名,見附錄1
                jsApiList: ["chooseWXPay"] // 必填,須要使用的JS接口列表,全部JS接口列表見附錄2
            });
            function onBridgeReady() {
                console.log("進入onBridgeReady~")
                WeixinJSBridge.invoke('getBrandWCPayRequest', {
                    "appId": pays_appId,
                    "timeStamp": pays_timeStamp,
                    "nonceStr": pays_nonceStr,
                    "package": pays_package,
                    "signType": pays_signType,
                    "paySign": pays_paySign //微信簽名 
                }, function (res) {
                    if (res.err_msg == "get_brand_wcpay_request:ok") {
                        obj.success();
                    }else if (res.err_msg == "get_brand_wcpay_request:fail") {
                        obj.fail();
                    }
                });
            }
            wx.ready(function () {
                if (typeof WeixinJSBridge == "undefined") {
                    console.log("typeof WeixinJSBridge~running");
                    if (document.addEventListener) {
                        document.addEventListener('WeixinJSBridgeReady', onBridgeReady, false);
                    }
                    else if (document.attachEvent) {
                        document.attachEvent('WeixinJSBridgeReady', onBridgeReady);
                        document.attachEvent('onWeixinJSBridgeReady', onBridgeReady);
                    }
                }else{
                    console.log("onBridgeReady()");
                    onBridgeReady();
                }
            });
        }
    },

 

h5調起微信原生支付html

pay.goWXPay({//頁面數據初始化完畢->調起微信支付
                                success:function(){
                                    resolve(res);
                                    console.log("用戶已經支付成功後返回ok")
                                    console.log(res)
                                    alert("已支付完成,準備刷新當前頁");
                                    window.location.href = "./a.html";//更新當前頁面數據
                                    // 使用以上方式判斷前端返回,微信團隊鄭重提示:
                                    //res.err_msg將在用戶支付成功後返回ok,但並不保證它絕對可靠。
                                },
                                fail:function(){
                                    console.log("用戶支付失敗返回fail")
                                    console.log(res)    
                                    Toast("支付失敗")
                                    window.location.href = "./a.html";//防止頁面無響應
                                }
                            });
相關文章
相關標籤/搜索