tp5配置微信公眾號配置的注意


在使用TP5做微信開發時大家一定遇到過配置失敗或者token驗證失敗的情況,而且使用日志打印參數進行簽名算法驗證都是真確的。

這個問題讓我苦惱了好久。最終發現,在我們驗證簽名是輸出了隨機字符串  echo $echoStr;時如果沒有關閉trace就會出現如下的輸出

這個就是罪魁禍首,萬一你不小心沒有改配置那就會輸出trace分析頁面的html,而不僅僅是echoStr,所以微信服務器接收到消息后會報錯,而且是抓狂的一直報錯。

解決辦法:

關閉 trace

另外附上tp5驗證url有效性的代碼。

 

[php] view plain copy
 
  1. $data = Request::instance()->get();  
  2. $signature = $data['signature'];  
  3. $timestamp = $data['timestamp'];  
  4. $nonce = $data['nonce'];  
  5. $echostr = $data['echostr'];  
  6.   
  7. /** 
  8.  * 計算微信簽名 
  9.  */  
  10. $token = Config::get('wechat_config.token');  
  11. //將參數組成一維數組  
  12. $signeSeed = [$token, $timestamp, $nonce];  
  13. //對參數字典序排序  
  14. sort($signeSeed, SORT_STRING);  
  15. //拼接成字符串  
  16. $signeStr = implode($signeSeed);  
  17. //加密字符串成簽名  
  18. $signeHash = sha1($signeStr);  
  19.   
  20. if ($signeHash == $signature) {  
  21.     echo $echostr;  
  22. }else{  
  23.     return false;  
  24. }  
 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM