【Exception】微信JS-SDK接入報錯: invalid signature 簽名無效 解決思路

【Exception】微信JS-SDK接入報錯: invalid signature 簽名無效 解決思路

 

一、問題描述

1、接入微信 JS-SDK實現分享鏈接時,顯示公司LOGO,便於品牌效應傳播。

2、遇到一個問題: JS-SDK 簽名一直無法通過,按照 【附錄5-常見錯誤及解決方法】逐一排除後,且本地加密後簽名和【微信 JS 接口簽名校驗工具】得出的結果一致的情況下,仍然報錯: "invalid signature" 。

 

 

3、心情如下圖:

 

 

二、問題解決

1、確認要分享的頁面URL是js動態獲取的,而非靜態域名地址。

  • 正確: var url = location.href.split('#')[0];
  • 錯誤: var url = "www.abc.com/xx.html".split('#')[0];

 

2、確認當前測試服務地址和JS安全域名IP地址一致。

  • 如:js 安全域名地址爲 abc.com ,對應ip爲: 11.22.33.44
  • 本地啓動 Tomcat,測試地址爲: http://localhost:999/xx.html 這種情況下,獲取到的signature 簽名,和 【微信 JS 接口簽名校驗工具】得出的結果是一樣的,但是會仍然報錯: "invalid signature" 。

 

三、問題總結

1、"invalid signature" 這個問題,對於新手來說,按照【附錄5-常見錯誤及解決方法】逐一排除後,仍未解決,會有點鬱悶,懷疑人生的! 這裏記錄下,希望對後續遇到此類問題的朋友能有所啓發。

2、不知道爲啥微信不支持靜態域名地址分享!!!

3、若問題描述,解決思路表述不清晰,不理解,可私信聯繫,交流溝通,謝謝。

 

 

參考資料: 微信JS-SDK說明文檔

        微信 JS 接口簽名校驗工具

        微信web開發者工具

 

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章