支付,微信支付以及支付寶支付是我們開發中的一個關鍵點~~~可能是技術開發人員的通?。ㄓ憛拰懠夹g文檔)的心理,造成微信支付文檔遍地是坑?。?!在這里我就我做過的微信公眾號支付爬過的一些坑,來做一些記錄。
首先:關于支付的域名授權回調以及網頁授權的url
在這里,你填寫的回調URL ,要包含你統一下單文件與前端調起H5接口文件的目錄~~~之前分模塊的時候將下單的類文件與前端的文件進行大分離,結果一直報簽名錯誤!??!后來把下單的文件與前端調取H5接口的文件包含在同一個目錄下,才成功。同時前端網頁授權的域名與后端接入的域名也必須保持一致
第二點:參數格式一定要注意,文檔中下單是的參數格式與你前端傳入的參數格式不一樣的。
在后端驗證簽名的參數時間戳timestamp為小寫,到了前端就成了大寫timeStamp。
第三點:demo中的一些坑:
1.在傳入參數的時候,demo中設置參數:SetTime_expire(date("YmdHis", time() + 600));其中傳入的參數中寫“600”,會報錯:[time_expire時間過短,刷卡至少1分鐘,其他5分鐘],這里我填寫的是3600才通過。
2.傳入的傳參數,生成商戶訂單號的時候,demo中使用的是你申請的商戶號MCH_ID + Date(“YmdHis”),在這里你就不要使用了,在測試中這個商戶號的生成方式不會報錯,一旦上線用戶下單頻率超多的時候,你就會出錯。做好在后面加上隨機數,但最好不要使用字母,聽說這種訂單號在檢索的時候出現問題。
3.在涉及退款的問題:在調用這個退款接口的時候,這里生成退款訂單號的時候,你使用MCH_ID+date("YmdHis“)一樣會造成退款訂單號重復,此時會報錯:”訂單號校驗信息不一致,請核實后重試“
最后一點,也是最最重要的一點那就是:前端調用H5接口的時候的回調:
千萬不要把微信的提示不當一回事兒,這里真的是一個坑?。。?/p>
建議在
function(res){
//在這里使用訂單查詢的接口,按照這里的查詢結果來進行判斷最佳
}
就這么多了,這里就是我遇到的一些我坑。其他的很多坑,我參照網上的資料以及微信的的demo避過了坑點,認真的閱讀微信的demo,結合文檔以及網上的資料,你會更快的理解微信支付的流程