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