溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

前端調用微信支付接口的方法

發布時間:2020-10-19 15:36:28 來源:億速云 閱讀:605 作者:小新 欄目:web開發

這篇文章主要介紹了前端調用微信支付接口的方法,具有一定借鑒價值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。

支付按鈕的點擊事件

$(′.Save_Patient_Msg′).click(function(){
    $(′.Save_Patient_Msg′).off(′click′);
    var hrdfId = getOrderId();
    var txnAmt = $(′.sum_pay.font-red′).html(); 
     
    var data = {orderId: hrdfId, txnAmt: "0.01", 
        prodDesc: "遠程診斷服務", callType: "JSAPI",
        access_token: getUrlParam("access_token")
    };
    $.ajax({
        type: ′POST′,
        url: ′/hims/api/commonPay/queryTransNo?access_token=′ getUrlParam(′access_token′),
        dataType:′json′,
        contentType:′application/json′,
        data: JSON.stringify(data),
        success: function(Wxres){
          if(!Wxres){
            $.alert(′服務器擁堵,請稍后訪問′)
          }else{
              console.log(Wxres);
              if(Wxres.data.respCode == ′fail′){
                $.alert(Wxres.data.respMsg);
              }else{
                 //10 微信支付接口
                    // 10.1 發起一個支付請求
                    // 注意:此 Demo 使用 2.7 版本支付接口實現,建議使用此接口時參考微信支付相關最新文檔。
                    var param = Wxres.data;
                    wx.config({
                        debug: false, // 開啟調試模式,調用的所有api的返回值會在客戶端alert出來,若要查看傳入的參數,可以在pc端打開,參數信息會通過log打出,僅在pc端時才會打印。
                        appId: ′wx403ead26691402fb′, // 必填,公眾號的唯一標識
                        timestamp: param.timestamp, // 必填,生成簽名的時間戳
                        nonceStr: param.noncestr, // 必填,生成簽名的隨機串
                        signature: param.signJs,// 必填,調用js簽名,
                        jsApiList: [′chooseWXPay′] // 必填,需要使用的JS接口列表,這里只寫支付的
                    });
                    wx.chooseWXPay({
                        timestamp: param.timestamp, // 支付簽名時間戳,注意微信jssdk中的所有使用timestamp字段均為小寫。但最新版的支付后臺生成簽名使用的timeStamp字段名需大寫其中的S字符
                        nonceStr: param.noncestr, // 支付簽名隨機串,不長于 32 位
                        package: "prepay_id=" param.transNo, // 統一支付接口返回的prepay_id參數值,提交格式如:prepay_id=***)
                        signType: "MD5", // 簽名方式,默認為′SHA1′,使用新版支付需傳入′MD5′
                        paySign: param.sign, // 支付簽名
                        success: function (res) {
                            if(res.errMsg == "chooseWXPay:ok"){
                                //alert("支付成功");
                                window.location.href  = "/hims/weixin/pages/Order_ok.html?access_token=" getUrlParam("access_token");
                            }else{
                                alert(res.errMsg);
                            }
                        },
                        cancel: function(res){
                            //alert(′取消支付′);
                        }
                    });
                }
            }   
        },
        error:function(data){
            var msg =  data.message || data.status;
            $.alert(′服務器錯誤′ msg);
        }
    });   
    return false;

});

獲取url代碼

function getUrlParam(name){
    //構造一個含有目標參數的正則表達式對象
    var reg = new RegExp("(^|&)"  name  "=([^&]*)(&|$)");
    //匹配目標參數
    var r = window.location.search.substr(1).match(reg);
    //返回參數值
    if (r!=null) return unescape(r[2]); return null;}

感謝你能夠認真閱讀完這篇文章,希望小編分享前端調用微信支付接口的方法內容對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,遇到問題就找億速云,詳細的解決方法等著你來學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女