1. 程式人生 > >關於微新分享PC微信端成功,手機微信失敗

關於微新分享PC微信端成功,手機微信失敗

開啟微信除錯功能

發現會彈出微信å享é¾æ¥åºç°config:invalid signatureé误ç解å³æ¹æ³

根據步驟一個個測試,發現並沒有解決問題。於是尋找了另一篇文章https://blog.csdn.net/gong0585/article/details/54616077。發現可能是生成signnatrue的引數url錯誤,於是根據文章中的內容來重新獲取,獲取Url的方式可參見下面的程式碼。如果是html的靜態頁面在前端通過ajax將url傳到後臺簽名,前端需要用js獲取當前頁面除去'#'hash部分的連結(可用location.href.split('#')[0]獲取,而且需要encodeURIComponent),因為頁面一旦分享,微信客戶端會在你的連結末尾加入其它引數,如果不是動態獲取當前連結,將導致分享後的頁面簽名失敗。

下面就是分享的URL格式

var url=location.href.split('#')[0];         url = encodeURIComponent(url);

後臺獲取處理生成signnatrue後,這時又出現了另一個問題

原因:未繫結微信公眾平臺上的JS介面安全域名或者填寫錯誤

方法:先登入微信公眾平臺進入“公眾號設定”的“功能設定”裡填寫“JS介面安全域名”,可以按照提示進行填寫,最多填寫三個。

  備註:登入後可在“開發者中心”檢視對應的介面許可權,只有獲取了許可權才能保證後面的工作繼續進行。

 

填寫的內容應該與上文說的url上的二級域名相對應,如xxx.xxx.com

然後就微信配置中的簽名就可以通過了,彈窗出來【config:ok】,此時分享給他人就能夠成功了。

為了解決這個問題,花了兩天,故做一下記錄。在此感謝各路大神提供的解決方案