微信公眾號(hào)H5之微信分享常見錯(cuò)誤和問題(小結(jié))
url轉(zhuǎn)碼
官方文檔描述: https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/JS-SDK.html#62
確認(rèn)url是頁(yè)面完整的url(請(qǐng)?jiān)诋?dāng)前頁(yè)面alert(location.href.split('#')[0])確認(rèn)),包括'http(s)😕/'部分,以及'?'后面的GET參數(shù)部分,但不包括'#'hash后面的部分
即獲取url完成地址的方法為
let url = window.location.href.split('#')[0];
如果鏈接帶有中文字符或者特殊符號(hào),前端需要使用encodeURIComponent編碼,同時(shí)后端需要配合解碼
let url = encodeURIComponent(window.location.href.split('#')[0]);
config注入
官網(wǎng)文檔描述: https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/JS-SDK.html#4
同一個(gè)url僅需調(diào)用一次,對(duì)于變化url的SPA的web app可在每次url變化時(shí)進(jìn)行調(diào)用,
注意,每次使用jssdk方法前都要先注入配置信息,并且,每使用一次,就要注入config一次.
在vue里,可以寫在每次路由變化時(shí)
router.beforeEach((to, from, next) => { // 獲取權(quán)限驗(yàn)證配置(簽名) 后端返回 getConfig, 注意返回字段的大小寫! let res // 注入配置信息 wx.config({ debug: false, // 調(diào)試開關(guān) appId: res.appId, // 必填,公眾號(hào)的唯一標(biāo)識(shí) timestamp:res.timestamp , // 必填,生成簽名的時(shí)間戳 nonceStr: res.nonceStr, // 必填,生成簽名的隨機(jī)串 signature: res.signature,// 必填,簽名 jsApiList: ["updateAppMessageShareData","updateTimelineShareData"] // 必填,需要使用的JS接口列表 }); wx.ready(() => { // doSoming }); })
安全域名
一定要再三確認(rèn)安全域名等微信公眾號(hào)配置信息,如分享鏈接link字段
很多時(shí)候的錯(cuò)誤并不是前端方法或者sdk等問題,而是后臺(tái)有沒有設(shè)置正確的安全域名和白名單等.
wx.updateAppMessageShareData({ title: '', // 分享標(biāo)題 desc: '', // 分享描述 link: '', // 分享鏈接,該鏈接域名或路徑必須與當(dāng)前頁(yè)面對(duì)應(yīng)的公眾號(hào)JS安全域名一致 imgUrl: '', // 分享圖標(biāo) success: function () { // 設(shè)置成功 } })
常見錯(cuò)誤
參考微信官網(wǎng)文檔-附錄5
地址: https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/JS-SDK.html#62
在開發(fā)過程遇到
- invalid signature
- the permission value is offline verifying
- permission denied
先參考文檔,排除基本因素,還是不行,再查找搜索引擎的答案.
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
javascript實(shí)現(xiàn)在某個(gè)元素上阻止鼠標(biāo)右鍵事件的方法和實(shí)例
這篇文章主要介紹了javascript實(shí)現(xiàn)在某個(gè)元素上阻止鼠標(biāo)右鍵事件的方法和實(shí)例,需要的朋友可以參考下2014-08-08parabola.js拋物線與加入購(gòu)物車效果的示例代碼
本篇文章主要介紹了parabola.js拋物線與加入購(gòu)物車效果的示例代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-10-10淺談JS正則表達(dá)式的RegExp對(duì)象和括號(hào)的使用
下面小編就為大家?guī)硪黄獪\談JS正則表達(dá)式的RegExp對(duì)象和括號(hào)的使用。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-07-07el-date-picker與el-time-picker的時(shí)間格式設(shè)置代碼
這篇文章主要介紹了el-date-picker與el-time-picker的時(shí)間格式設(shè)置代碼,代碼簡(jiǎn)單易懂,對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2023-11-11javascript實(shí)現(xiàn)全角與半角字符的轉(zhuǎn)換
這篇文章主要介紹了javascript實(shí)現(xiàn)全角與半角字符的轉(zhuǎn)換的相關(guān)代碼與知識(shí)點(diǎn)分享,需要的朋友可以參考下2015-01-01