微信支付 API v3 回呼通知 簽章驗證 PHPdemo有嘛?
詳細問題介紹:
#將微信回呼接收到的wechatpay-signature 字段驗簽,驗簽失敗,後面打斷點發現
將微信回呼接收到的wechatpay-signature 字段用base64_decode解碼後得到的亂碼,
#這有什麼問題嘛,回調驗簽驗不過,問題緊急! ! !
還有確認用的證書是平台證書,也是最新的。
解決方法:
問題解決了! ! !
我的問題是因為用了框架的獲取body裡參數的方法,導致body參數裡的字段順序與微信傳來的不一致,(是我看了一篇java實現的文章受到的啟發),這裡強烈建議使用程式語言原生獲取參數的方式獲取,我們php是file_get_contents("php://input");
注意:對微信簽名base64_decode解碼後亂碼,這裡並不是微信的簽名有錯,本來就是這樣的
反正排除了證書,序號之類的問題,就要看參數的問題
註解調的是我原來取得參數,並且建立簽名字串的方式,現在採用原生的方式就校驗通過了
希望能幫到大家。
以上是如何解決微信支付API v3回呼通知出現亂碼問題的詳細內容。更多資訊請關注PHP中文網其他相關文章!