功能背景:
基於微信公眾號的h5商城頁面,實現特定商品的分享,包括朋友圈和好友分享功能。
代碼實現(以vue項目為例):
首先貼上官方開發文檔:https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/JS-SDK.html
1、引入js
在html頁面引入引入http://res.wx.qq.com/open/js/jweixin-1.6.0.js
如需進一步提升服務穩定性,當上述資源不可訪問時,可改訪問:http://res2.wx.qq.com/open/js/jweixin-1.6.0.js (支持https)。
<script src="http://res.wx.qq.com/open/js/jweixin-1.4.0.js"></script>
2、通過config接口注入權限驗證配置
所有需要使用JS-SDK的頁面必須先注入配置信息,否則將無法調用
wx.config({ debug: true, // 開啟調試模式,調用的所有api的返回值會在客戶端alert出來,若要查看傳入的參數,可以在pc端打開,參數信息會通過log打出,僅在pc端時才會打印。 appId: '', // 必填,公眾號的唯一標識 timestamp: , // 必填,生成簽名的時間戳 nonceStr: '', // 必填,生成簽名的隨機串 signature: '',// 必填,簽名 jsApiList: [] // 必填,需要使用的JS接口列表 });
debug、appId、timestamp、nonceStr、signature的值可以請求后端,這些信息存儲在數據庫里,jsApiList就是你將要使用微信提供的接口或者叫方法。比如常用 的有分享朋友圈、好友,對應的接口是
updateAppMessageShareData、
updateTimelineShareData,在jsApiList中配置
jsApiList: [‘updateAppMessageShareData’,‘updateTimelineShareData’]。
3、通過ready接口處理成功驗證
wx.ready(()=>{ //config信息驗證后會執行ready方法,所有接口調用都必須在config接口獲得結果之后,config是一個客戶端的異步操作,所以如果需要在頁面加載時就調用相關接口,則須把相關接口放在ready函數中調用來確保正確執行。對於用戶觸發時才調用的接口,則可以直接調用,不需要放在ready函數中。 //使用接口 wx.showOptionMenu() })
4、通過error接口處理失敗驗證
wx.error(function(res){ }