微信公众号支付调用chooseWXPay提示“errmsg choosewxpay fail”
微信公眾號支付一直提示“errmsg choosewxpay fail”,也沒有提示具體錯誤信息,簽名沒有問題(簽名驗證地址:https://pay.weixin.qq.com/wiki/doc/api/micropay.php?chapter=20_1),支付目錄設置也沒有問題,因為用的是微信提供的sdk,所有重點檢查了sdk的具體流程,發現了原來是sdk簽名使用的加密算法問題。
根據微信支付的業務流程,支付主要有兩個步驟:1 后臺調用統一下單接口獲取prepay_id,2 前端再調用js函數chooseWXPay拉起支付,這兩個流程都需要用到簽名
sdk下載地址:https://pay.weixin.qq.com/wiki/doc/api/micropay.php?chapter=11_1,使用的java版本的sdk,默認調用統一下單接口的加密是HMACSHA256,而前端js調用chooseWXPay的加密算法只支持MD5,兩次的加密算法不一致也導致提示錯誤信息“errmsg choosewxpay fail”,具體也不知道這兩個流程的加密算法有什么關聯,微信也不說明。
sdk文件WXPay.java中默認為HMACSHA256,都修改為MD5調用支付接口了
?
后面根據錯誤原因針對性的查了一下微信支付HMACSHA256還是有其他同學發現了這個問題,http://blog.csdn.net/neverneverstops_/article/details/77067169,只是大家搜索的時候一般都是搜索“errmsg choosewxpay fail”、簽名錯誤等,查到的都是簽名錯誤、支付目錄設置問題等等。
?
轉載于:https://www.cnblogs.com/jaamy/p/7645377.html
總結
以上是生活随笔為你收集整理的微信公众号支付调用chooseWXPay提示“errmsg choosewxpay fail”的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 春卷皮哪里可以买到 寻找春卷皮的好去处?
- 下一篇: scrum与第一次teamwork