一、使用JSSDK需要一個公眾號(需要認證!):
(1)、把自己項目的服務器地址輸入。
(2)、把MP_verify_m7Qp93BAuIGDWRVO.txt 文件下載下來,放到該服務器域名指向的根目錄!
這樣基礎工作就完成了!
二、后台生成前端需要的參數!
(1)、前端想要實現分享、掃一掃等等需要的參數!
wx.config({ debug: false,//是否開啟調試功能,這里關閉! appId: jssdk.appId,//appid timestamp: parseInt(jssdk.timestamp), //時間戳 nonceStr: jssdk.nonceStr, //生成簽名的隨機字符串 signature: jssdk.signature,//簽名 jsApiList: [ "onMenuShareTimeline", "onMenuShareAppMessage" ] });
(2)、后端代碼獲取參數實現如下:
微信官方后台代碼: http://demo.open.weixin.qq.com/jssdk/sample.zip
三、前端代碼封裝實現:
(一)、頁面中引入!
<script src='https://res.wx.qq.com/open/js/jweixin-1.0.0.js'></script>
(二)、請求后台的接口,獲取步驟二中展示的需要的參數,然后調用如下的封裝的函數即可實現自定義分享,掃一掃、拍照等功能!
/** * @param {jssdk為從后台請求過來的各種信息,包括appId,timestamp,nonceStr,signature} jssdk * 以上4個參數,需要后台在公眾號相關平台進行配置,然后得出!前端頁面必須放在服務號配置的域名下面才可以保證成功! * @param {為js對象格式,options里面包含自定義的title,desc,link,imgUrl} options * 引入jweixin文件后,直接調用該函數,即可實現自定義分享功能 */ function shareJs(jssdk, options) { wx.config({ debug: false,//是否開啟調試功能,這里關閉! appId: jssdk.appId,//appid timestamp: parseInt(jssdk.timestamp), //時間戳 nonceStr: jssdk.nonceStr, //生成簽名的隨機字符串 signature: jssdk.signature,//簽名 jsApiList: [ "onMenuShareTimeline", "onMenuShareAppMessage" ] }); var defaults = { title: "分享的標題", desc: "分享的描述", link: location.href, //分享頁面地址,不能為空,這里可以傳遞參數!!!!!!! imgUrl: 'https://tup.iheima.com/sport.png', //分享是封面圖片,不能為空 success: function () { }, //分享成功觸發 cancel: function () { } //分享取消觸發,需要時可以調用 } // 合並對象,后面的替代前面的! options = Object.assign({}, defaults, options); wx.ready(function () { var thatopts = options; // 分享到朋友圈 wx.onMenuShareTimeline({ title: thatopts.title, // 分享標題 desc: thatopts.desc, // 分享描述 link: thatopts.link, // 分享鏈接 imgUrl: thatopts.imgUrl, // 分享圖標 success: function () { // alert("成功"); }, cancel: function () { // alert("失敗") } }); // 分享給朋友 wx.onMenuShareAppMessage({ title: thatopts.title, // 分享標題 desc: thatopts.desc, // 分享描述 link: thatopts.link, // 分享鏈接 imgUrl: thatopts.imgUrl, // 分享圖標 success: function () { // alert("成功"); }, cancel: function () { // alert("失敗") } }); }); }