小程序資訊

                                                                                  小程序實現微信支付的實現方法介紹及問題解答

                                                                                  小程序資訊 2019-01-11 09:16:00 | 閱讀:3821 | 作者:方維網絡 | 標簽:小程序支付    
                                                                                  隨著小程序快速發現,小程序的支付接口也已經很普遍的運用了,下面直接講小程序支付的實現功能(接口使用的是thinkphp代碼):
                                                                                   小程序js代碼如下圖所示

                                                                                  微信支付小程序代碼

                                                                                  需要注意的是,這里需要要用到md5.js文件
                                                                                   
                                                                                  然后是接口代碼如下圖所示:

                                                                                  小程序JS代碼

                                                                                  Openid 是通過會員表的字段獲取到小程序的唯一標識openid,$notifi_url是異步回調的地址,這個回調地址可以自己定義,不需要在商戶賬號那里設置。$data就是返回到小程序的JSON數據.
                                                                                  接下來小程序代碼如下圖:

                                                                                  JS代碼

                                                                                  如果設置正確,沒會彈出微信支付的窗口,提示支付完成,并跳轉到訂單列表頁面。
                                                                                  提前條件是必須把小程序APPID,小程序的APPSECRET,商戶號MCHID和商戶支付密鑰KEY設置正確,缺一不可,如果商戶號已經接入過微信支付接口了,就需要問客戶提供商戶支付密鑰,否則可以自己重置商戶支付密鑰,注意公眾號和小程序是可以使用同一個商戶的,因為小程序的回調地址可以在代碼里填寫,不需要在商戶賬號那里授權地址才能使用。
                                                                                   
                                                                                  問題解答部分:
                                                                                  1.調用支付JSAPI缺少參數:total_fee。
                                                                                  t小程序的Console里出現這個提示,很多人以為是金額有問題,其實是pkg出錯了,其中pkg='prepay_id=' + res_pay.data.pay_arr.prepay_id; 如果用 console.log(pkg),會出現prepay_id=undefined,即res_pay.data.pay_arr.prepay_id為空,那么哪些參數會導致這種情況呢?最典型的是openid獲取不正確,因為小程序支付時需要獲得用戶的openid。如下圖所示:

                                                                                  代碼參數

                                                                                  還有一種可能是訂單號的問題,如果訂單在該商戶已經支付過了,就不能再使用,這個問題出現的概率比較低。
                                                                                  支付驗證簽名失敗這個基本是由商戶支付密鑰key出錯引起的,不要以為接口的配置文件填寫正確的key就可以用了,還要知道小程序里也要把商戶的key傳遞到接口里,如下圖所示:
                                                                                  var paySign = md5.hexMD5('appId=' + appId + '&nonceStr=' + nonceStr + '&package=' + pkg + '&signType=MD5&timeStamp=' + timeStamp + "&key=" + app.configData.wxpay_secret).toUpperCase();
                                                                                  其中的app.configData.wxpay_secret就是與接口里的商戶支付密鑰KEY是相同的,要填寫正確,否則出現簽名失敗的問題。

                                                                                  方維網絡專注于商城小程序開發,涉及到會員、訂單、支付等方面都經驗豐富,歡迎客戶咨詢400-800-9385

                                                                                  天天爽夜夜爽夜夜爽精品视频_久久青青草原亚洲av无码_欧美日韩亚洲一区二区三区4k岛国_kkkk国产在线播放