摘要:微信分享到朋友圈微信分享給朋友自定義圖文信息本來效果預期效果參考微信開發(fā)者文檔需要準備的通過微信認證的公眾號有備案過的域名步驟后臺需要實現(xiàn)的事情登錄微信公眾平臺進入公眾號設置的功能設置里填寫接口安全域名調(diào)用的必須在接口安全域名可以登錄后可
微信分享到朋友圈&微信分享給朋友自定義圖文信息
本來效果:
預期效果:
參考:微信開發(fā)者文檔js-sdk
需要準備的:
**通過微信認證的公眾號** **有備案過的域名**
步驟:
后臺需要實現(xiàn)的事情:
1.登錄微信公眾平臺進入“公眾號設置”的“功能設置”里填寫“JS接口安全域名”,(調(diào)用的url必須在js接口安全域名可以 )
2.登錄后可在“開發(fā)者中心”查看對應的接口權(quán)限,認證過的公眾號都可以調(diào)大多數(shù)接口。
3.生成js-sdk的權(quán)限簽名:jsapi_ticket 參照js-sdk權(quán)限簽名文檔
前端需要干的事情:
1.在需要調(diào)用JS接口的頁面引入如下JS文件,(支持https):http://res.wx.qq.com/open/js/...
備注:支持使用 AMD/CMD 標準模塊加載方法加載
2.前端通過發(fā)送請求獲取簽名權(quán)限或者后臺語言嵌入html (題主公司直接用的內(nèi)嵌php),因為簽名權(quán)限出于安全問題只能通過后臺實現(xiàn)
3.通過config接口注入權(quán)限驗證配置,參數(shù)由后臺提供,選項debug上線后記得設置成false
wx.config({ debug: true, // 開啟調(diào)試模式,調(diào)用的所有api的返回值會在客戶端alert出來,若要查看傳入的參數(shù),可以在pc端打開,參數(shù)信息會通過log打出,僅在pc端時才會打印。 appId: "", // 必填,公眾號的唯一標識 timestamp: , // 必填,生成簽名的時間戳 nonceStr: "", // 必填,生成簽名的隨機串 signature: "",// 必填,簽名 jsApiList: [] // 必填,需要使用的JS接口列表 });
所有需要使用JS-SDK的頁面必須先注入配置信息,否則將無法調(diào)用(同一個url僅需調(diào)用一次,對于變化url的SPA的web app可在每次url變化時進行調(diào)用,目前Android微信客戶端不支持pushState的H5新特性,所以使用pushState來實現(xiàn)web app的頁面會導致簽名失敗,此問題會在Android6.2中修復)。
4.通過ready接口處理成功驗證,驗證失敗進入error回調(diào)函數(shù)
wx.ready(function(){ // config信息驗證后會執(zhí)行ready方法,所有接口調(diào)用都必須在config接口獲得結(jié)果之后,config是一個客戶端的異步操作,所以如果需要在頁面加載時就調(diào)用相關接口,則須把相關接口放在ready函數(shù)中調(diào)用來確保正確執(zhí)行。對于用戶觸發(fā)時才調(diào)用的接口,則可以直接調(diào)用,不需要放在ready函數(shù)中。 });
5.通過error接口處理失敗驗證
驗證失敗可能是由于簽名過期或者沒有接收到等原因?qū)е碌?/p>
wx.error(function(res){ // config信息驗證失敗會執(zhí)行error函數(shù),如簽名過期導致驗證失敗,具體錯誤信息可以打開config的debug模式查看,也可以在返回的res參數(shù)中查看,對于SPA可以在這里更新簽名。 });
6.在ready函數(shù)里寫分享的代碼
請注意不要有誘導分享等違規(guī)行為,對于誘導分享行為將永久回收公眾號接口權(quán)限
分享朋友圈代碼:
//獲取“分享到朋友圈”按鈕點擊狀態(tài)及自定義分享內(nèi)容接口 wx.onMenuShareTimeline({ title: "", // 分享標題 link: "", // 分享鏈接,該鏈接域名或路徑必須與當前頁面對應的公眾號JS安全域名一致 imgUrl: "", // 分享圖標 這個圖片地址需要填寫絕對路徑 www.xxx.com/images/xxx.jpg success: function () { // 用戶確認分享后執(zhí)行的回調(diào)函數(shù) }, cancel: function () { // 用戶取消分享后執(zhí)行的回調(diào)函數(shù) } });
分享給朋友代碼
wx.onMenuShareAppMessage({ title: "", // 分享標題 desc: "", // 分享描述 link: "", // 分享鏈接,該鏈接域名或路徑必須與當前頁面對應的公眾號JS安全域名一致 imgUrl: "", // 分享圖標 這個圖片地址需要填寫絕對路徑 www.xxx.com/images/xxx.jpg type: "", // 分享類型,music、video或link,不填默認為link dataUrl: "", // 如果type是music或video,則要提供數(shù)據(jù)鏈接,默認為空 success: function () { // 用戶確認分享后執(zhí)行的回調(diào)函數(shù) }, cancel: function () { // 用戶取消分享后執(zhí)行的回調(diào)函數(shù) } });
自己寫的時候碰到的bug:
因為前后端沒有分離,在通過config接口注入權(quán)限驗證配置時需要把js代碼寫在html文件中才能獲取到參數(shù),多帶帶寫成一個js文件讀取不到
以上就是全部代碼,有錯歡迎指出,看到就會改,希望能幫到你!
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.hztianpu.com/yun/93077.html
摘要:本篇主要講述,如何在微信中打開自家的頁面,在然后在用戶分享的時候,能由我們自定義分享出去后,展示的頁面卡片中的頁面標題頁面描述頁面圖片和分享鏈接。 本篇主要講述,如何在微信中打開自家的頁面,在然后在用戶分享的時候,能由我們自定義分享出去后,展示的頁面卡片中的頁面標題、頁面描述、頁面圖片和分享鏈接。 此功能,具體的來說,是: 在微信打開自家的頁面 點擊右上角微信的功能按鈕,出現(xiàn)功能菜單...
閱讀 1398·2021-09-04 16:40
閱讀 3513·2021-07-28 00:13
閱讀 2948·2019-08-30 11:19
閱讀 2669·2019-08-29 12:29
閱讀 3220·2019-08-29 12:24
閱讀 1170·2019-08-26 13:28
閱讀 2456·2019-08-26 12:01
閱讀 3502·2019-08-26 11:35