微信分享jssdk config:invalid signature 簽名錯誤


使用微信分享時,按照官方給的demo,使用時一直提示簽名錯誤。

根據微信開發文檔(http://mp.weixin.qq.com/wiki/7/aaa137b55fb2e0456bf8dd9148dd613f.html)排查,完全沒問題,而且可以通過他們的檢驗工具檢驗(http://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=jsapisign)。

輸出簽名與PHP程序計算出來的簽名是一致的,莫名其妙的問題。

 

最后經過網友提醒,是微信demo程序獲取URL中出現了問題。

源程序:

$protocol = (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off' || $_SERVER['SERVER_PORT'] == 443) ? "https://" : "http://";
$url = "$protocol$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";

改為:

$protocol = (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off' || $_SERVER['SERVER_PORT'] == 443) ? "https://" : "http://";
$url = "$protocol$_SERVER[SERVER_NAME]$_SERVER[REQUEST_URI]";

即:HTTP_HOST 改為SERVER_NAME

成功!!!

 

網友還碰到過多種錯誤,參考這個解決:

https://segmentfault.com/q/1010000002520634


免責聲明!

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



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