中文字幕理论片,69视频免费在线观看,亚洲成人app,国产1级毛片,刘涛最大尺度戏视频,欧美亚洲美女视频,2021韩国美女仙女屋vip视频

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
如何在小程序中,獲取微信群 ID?

那么,如何正確地在小程序里,加入這個能力呢?在使用開發(fā)者工具的時候,如何進行調試呢?

今天,「知曉程序」就來告訴你,如何正確地在小程序里讀取微信群 ID。

關注「知曉程序」公眾號,在微信后臺回復「ID」,查看小程序獲取群 ID Demo 的源碼。

兩種讀取方式

根據官方文檔,我們可以通過以下兩個方式,讀取到微信群 ID 的信息:

  • 當用戶成功地將小程序頁面分享到微信群的時候,小程序的回調中可以獲取分享目標的微信群 ID。
  • 當用戶從微信群進入小程序頁面的時候,小程序啟動時可以獲取用戶進入小程序的渠道群聊 ID。

首先,我們來聊聊用戶成功地將小程序頁面分享到微信群的情況下,如何讀取目標微信群的 ID。

此次接口更新,控制小程序頁面右上角菜單中的「分享」按鈕顯示與消失,不再完全依賴頁面邏輯文件中是否擁有onShareAppMessage現在有兩個新的接口,可以決定小程序是否顯示分享菜單wx.showShareMenu(顯示分享菜單)和 wx.hideShareMenu(隱藏分享菜單)。在 接口中,shareTickets原本這個接口的return只能接受path等控制分享卡片內容的參數。在此次更新后,return可以在分享成功、失敗、完成(成功和失?。┫?,執(zhí)行特定的回調函數。在回調函數中,我們可以插入參數,以便小程序將微信群信息傳入。小程序在檢測到用戶分享動作之后,會將shareTicket帶入到這個參數中,并執(zhí)行相應回調函數。

來看代碼:

Page({ onLoad { wx.showShareMenu({ withShareTicket: true //要求小程序返回分享目標信息 }) }, // 其他的頁面函數、生命周期函數等 onShareAppMessage { return { title: '頁面分享標題', path: '/pages/path/to/target', success(res){ console.log(res.shareTickets[0]) // 奇怪為什么 shareTickets 是個數組?這個數組永遠只有一個值。 } } } }

接下來,是通過微信群進入小程序情景下的微信群 ID 獲取。

用戶進入小程序時,onLaunch生命周期函數中,獲取到進入小程序的渠道(情景值)的微信群分享卡片進入小程序,小程序就可以額外獲取到 。App({ onLaunch: function (ops) { if(ops.scene == 1044){ console.log(ops.shareTicket) } } })有了shareTicket通過調用wx.getShareInfo函數,獲取到目標微信群(加密過后的)ID 了需要注意的是,如果當前用戶未登錄(從未調用wx.loginsession過期),這些接口都會出現調用失敗的情況另外,當分享失敗或數據獲取失敗,這些函數只會調用fail「知曉程序」complete回調,并通過數據包中的錯誤碼,判斷接口是否成功調用,以免出現調用失敗時小程序無相應反應的情況。

在電腦上調試分享接口

為了便于開發(fā),微信很貼心地在開發(fā)者工具中加入了分享接口調試功能。下面,「知曉程序」就來告訴你,調試分享接口的具體方法。

首先是用戶的分享動作調試。

在目標頁面中,點擊右上角的「更多」按鈕,再點擊「轉發(fā)」。這時候,頁面會變成「發(fā)送給好友」,里面有開發(fā)者工具提供的 9 個模擬群,任君選擇。

隨意點擊一個群,進行模擬分享動作,小程序就可以獲取到模擬群的加密數據。

接下來,是獲取進入小程序的微信群信息的調試方法。

點擊左側「編譯」按鈕下方的「自定義編譯」按鈕,在「設置應用的進入場景」,選擇「1044:微信群會話中的小程序消息卡片(帶 shareTicket)」。

選擇場景之后,對話框下方會多出「選擇進入的群」。隨便選擇一個測試群,再點擊確定,你就可以開始調試了。

如果你利用wx.getShareInfo接口,調試出的結果是這樣,那么恭喜你,你的代碼沒毛病,可以直接進入下一個步驟——數據解碼。

數據解碼

為了保證用戶隱私安全,微信特意將微信群 ID 進行了非常復雜的加密。當加密數據直接發(fā)到服務器后,服務器還需要再進行一步解碼,才能正常使用微信群信息。

如果你之前做過小程序中用戶數據的解碼,那么你可以將同樣的代碼套用到解碼微信群數據上,因為二者的加密算法是一模一樣的。

如果你沒有做過類似的解碼工作,也不用擔心,微信提供了包括 PHP、Node.js 等環(huán)境下的解碼 demo 代碼。我們只需從小程序開發(fā)文檔中下載 demo 代碼,再將其引入,也能輕松進行解碼。

我們以 Node.js 為例,演示如何使用官方的解碼 Demo:

  • 解壓官方 Demo 代碼包,在解壓后的文件夾中找到Node這個文件夾。
  • 通過終端(Terminal)進入這個文件夾,執(zhí)行npm init命令,將它變?yōu)?Node.js 應用。
  • 修改文件夾中的demo.js,將示例代碼替換成實際信息,包括小程序 App ID、登錄用戶的 Session Key、加密數據等等。
  • 在終端中,執(zhí)行node demo.js命令 。

執(zhí)行后的結果如下:

比較有意思的是,在宣布這個消息當天進行調試,分享接口仍可以獲取到微信群名稱,但現在已無法正常獲取。不知道是有意為之還是 bug 使然。

但是,微信群的唯一 ID(openGId)仍然可以正常獲取。開發(fā)者依然可以通過這個 ID 識別不同的微信群,進而判斷用戶通過哪一個微信群進入小程序。

關注「知曉程序」公眾號,在微信后臺回復「點評」,獲取大眾點評點餐小程序全套開發(fā)經驗。

本站僅提供存儲服務,所有內容均由用戶發(fā)布,如發(fā)現有害或侵權內容,請點擊舉報
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
微信小程序如何知道分享是否成功的解決方案
【微信小程序開發(fā)?系列文章三】數據層
抖音和微信小程序的開發(fā)區(qū)別
微信小程序群功能開發(fā)-前端篇 極樂君
asp寫的微信小程序支付demo-服務器端是asp mdb的
微信小程序https請求wx.request詳細教程
更多類似文章 >>
生活服務
熱點新聞
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯系客服!

聯系客服