【問題】微信分享測試環境分享
阿新 • • 發佈:2019-02-27
signature 開啟 簽名 ges ref Once 測試的 title del
-
【問題】:在測試環境中,微信分享分享給好友的鏈接是當前頁面的鏈接,期望為接口返回的特定鏈接。
-
【解決】:
- 在測試反饋給我這個問題的時候,我先去正式環境看了一下,沒有這個問題。
- 回想了一下近期代碼的更改,也沒有涉及到相關的更改。
- 得出初步結論:可能是測試環境配置的問題,造成分享不正確。不過雖然大概率是測試配置原因,問題還是需要定位的,看什麽原因造成測試環境有問題。連上
- 連上抓包軟件charles,進行查看,發現getJSApi返回502,這個接口的完整地址是
https://wx.tairanmall.com/getJSApi
。所以應該是測試的代理不對。果然,連上了以後就請求通了。 - 以為這樣就可以了。但是我還是太天真了。雖然在微信開發者工具中,分享一切正常!但是在手機中,還是有問題,分享不出去!
- 暫定是getJSApi返回的信息有問題。過了一天,測試通過了,但是沒有任何改動。。。emmmmm
點擊!查看微信開發者工具中分享
點擊!查看手機微信中分享
從上述gif中可以看到,開發者工具中,可以正確獲取到分享標題等信息。而且在控制臺中可以看到相關操作例如取消和發送的時候,打印出的信息。而在手機微信中,控制臺中是沒有信息的。而且接口也都是獲取到的。基本上問題就集中在下面代碼中。
我們在手機中alert(mainTitle),alert(url),都有彈窗出來。而在wx.onMenuShareAppMessage這一步就走不通了。暫定疑問在wx.config中,因為getJSApi接口返回的數據,不能被wx.config通過。
wx.config({ debug: false, // 開啟調試模式,調用的所有api的返回值會在客戶端alert出來,若要查看傳入的參數,可以在pc端打開,參數信息會通過log打出,僅在pc端時才會打印。 appId: res.data.appId, // 必填,公眾號的唯一標識 timestamp: res.data.timestamp, // 必填,生成簽名的時間戳 nonceStr: res.data.nonceStr, // 必填,生成簽名的隨機串 signature: res.data.signature,// 必填,簽名,見附錄1 jsApiList: [ ‘hideMenuItems‘, ‘onMenuShareAppMessage‘, ‘onMenuShareTimeline‘, ‘onMenuShareQQ‘, ‘onMenuShareQZone‘, ‘onMenuShareWeibo‘ ] // 必填,需要使用的JS接口列表,所有JS接口列表見附錄2 }); wx.ready(function(){ wx.onMenuShareAppMessage({ title: mainTitle, // 分享標題 desc: subTitle, // 分享描述 link: url,// 分享鏈接,該鏈接域名或路徑必須與當前頁面對應的公眾號JS安全域名一致 imgUrl: imgUrl, // 分享圖標 type: ‘‘, // 分享類型,music、video或link,不填默認為link dataUrl: ‘‘, // 如果type是music或video,則要提供數據鏈接,默認為空 success: function () { // 用戶確認分享後執行的回調函數 }, cancel: function () { // 用戶取消分享後執行的回調函數 }, fail: function () { // 用戶取消分享後執行的回調函數 } }); wx.onMenuShareTimeline({ title: mainTitle, // 分享標題 link: url, // 分享鏈接,該鏈接域名或路徑必須與當前頁面對應的公眾號JS安全域名一致 imgUrl: imgUrl, // 分享圖標 success: function () { // 用戶確認分享後執行的回調函數 }, cancel: function () { // 用戶取消分享後執行的回調函數 } }); wx.onMenuShareQQ({ title: mainTitle, // 分享標題 desc: subTitle, // 分享描述 link: url, // 分享鏈接 imgUrl: imgUrl, // 分享圖標 success: function () { // 用戶確認分享後執行的回調函數 }, cancel: function () { // 用戶取消分享後執行的回調函數 } }); wx.onMenuShareWeibo({ title: mainTitle, // 分享標題 desc: subTitle, // 分享描述 link: url, // 分享鏈接 imgUrl: imgUrl, // 分享圖標 success: function () { // 用戶確認分享後執行的回調函數 }, cancel: function () { // 用戶取消分享後執行的回調函數 } }); wx.onMenuShareQZone({ title: mainTitle, // 分享標題 desc: subTitle, // 分享描述 link: url, // 分享鏈接 imgUrl: imgUrl, // 分享圖標 success: function () { // 用戶確認分享後執行的回調函數 }, cancel: function () { // 用戶取消分享後執行的回調函數 } }); });
【問題】微信分享測試環境分享