這是微信的官方API文檔 微信API
微信支付的準備工作
申請公眾號,申請開通支付,這個很簡單,自行百度
申請好之后 在微信公眾平臺頁面的“微信支付”頁面中的“開發配置”Tab上配置“支付授權目錄”,“測試授權目錄”,“測試白名單”
在微信公眾平臺頁面的“開發者中心”中找到“AppID(應用ID)”和“AppSecret(應用密鑰)”
在商戶平臺中找到微信支付分配的商戶號,以及自己配置一個商戶支付密鑰
具體步驟
首先通過微信支付的api 獲得支付用的prepay_id,這里需要用到上面提到的“AppID(應用ID)”,“AppSecret(應用密鑰)”,“微信支付分配的商戶號”,“商戶支付密鑰”以及其他的一些參數(具體參照微信開發文檔)用MD5加密成簽名(第一次簽名)獲得prepay_id后,用prepay_id和一些其他參數(具體參照微信開發文檔)用MD5加密成簽名(第二次簽名)然后在前端通過微信內置瀏覽器提供的js API,WeixinJSBridge.invoke來調用微信支付的彈出頁面,這里需要用到上面的第二次的簽名
具體代碼如下
幾個容易失敗點需要注意
支付鏈接和在開發平臺配置的鏈接不匹配
總共需要2次簽名,并且所需的參數是不同的,在JS中用到的簽名是第二次簽名,不要混淆參數傳遞的不能有錯
如果body中有中文需要轉義其中還有一些問題沒有完全解決,就是位置支付沒有一個判斷失效的時間,如果在微信支付的彈出層停留時間太久了,可能這個訂單在我們網站上已經失效了,可在微信支付中仍然能支付成功,如果有高人知道這個問題怎么解決的,希望能告訴解決辦法
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com