欧美三级国产三级日韩三级_亚洲熟妇丰满大屁股熟妇_欧美亚洲成人一区二区三区_国产精品久久久久久模特

微信小程序開(kāi)發(fā)實(shí)戰(zhàn)之獲取UnionId詳解 - 新聞資訊 - 云南小程序開(kāi)發(fā)|云南軟件開(kāi)發(fā)|云南網(wǎng)站建設(shè)-昆明葵宇信息科技有限公司

159-8711-8523

云南網(wǎng)建設(shè)/小程序開(kāi)發(fā)/軟件開(kāi)發(fā)

知識(shí)

不管是網(wǎng)站,軟件還是小程序,都要直接或間接能為您產(chǎn)生價(jià)值,我們?cè)谧非笃湟曈X(jué)表現(xiàn)的同時(shí),更側(cè)重于功能的便捷,營(yíng)銷的便利,運(yùn)營(yíng)的高效,讓網(wǎng)站成為營(yíng)銷工具,讓軟件能切實(shí)提升企業(yè)內(nèi)部管理水平和效率。優(yōu)秀的程序?yàn)楹笃谏?jí)提供便捷的支持!

您當(dāng)前位置>首頁(yè) » 新聞資訊 » 小程序相關(guān) >

微信小程序開(kāi)發(fā)實(shí)戰(zhàn)之獲取UnionId詳解

發(fā)表時(shí)間:2021-1-5

發(fā)布人:葵宇科技

瀏覽次數(shù):119

UnionID 機(jī)制說(shuō)明

如果開(kāi)發(fā)者擁有多個(gè)移動(dòng)應(yīng)用、網(wǎng)站應(yīng)用、和公眾帳號(hào)(包括小程序),可通過(guò) UnionID 來(lái)區(qū)分用戶的唯一性,因?yàn)橹灰峭粋€(gè)微信開(kāi)放平臺(tái)帳號(hào)下的移動(dòng)應(yīng)用、網(wǎng)站應(yīng)用和公眾帳號(hào)(包括小程序),用戶的 UnionID 是唯一的。換句話說(shuō),同一用戶,對(duì)同一個(gè)微信開(kāi)放平臺(tái)下的不同應(yīng)用,UnionID是相同的。

UnionID獲取途徑

綁定了開(kāi)發(fā)者帳號(hào)的小程序,可以通過(guò)以下途徑獲取 UnionID。

  1. 調(diào)用接口 wx.getUserInfo,從解密數(shù)據(jù)中獲取 UnionID。注意本接口需要用戶授權(quán),請(qǐng)開(kāi)發(fā)者妥善處理用戶拒絕授權(quán)后的情況。

  2. 如果開(kāi)發(fā)者帳號(hào)下存在同主體的公眾號(hào),并且該用戶已經(jīng)關(guān)注了該公眾號(hào)。開(kāi)發(fā)者可以直接通過(guò) wx.login + code2Session 獲取到該用戶 UnionID,無(wú)須用戶再次授權(quán)。

  3. 如果開(kāi)發(fā)者帳號(hào)下存在同主體的公眾號(hào)或移動(dòng)應(yīng)用,并且該用戶已經(jīng)授權(quán)登錄過(guò)該公眾號(hào)或移動(dòng)應(yīng)用。開(kāi)發(fā)者也可以直接通過(guò) wx.login + code2Session 獲取到該用戶 UnionID ,無(wú)須用戶再次授權(quán)。

  4. 用戶在小程序(暫不支持小游戲)中支付完成后,開(kāi)發(fā)者可以直接通過(guò)getPaidUnionId接口獲取該用戶的 UnionID,無(wú)需用戶授權(quán)。注意:本接口僅在用戶支付完成后的5分鐘內(nèi)有效,請(qǐng)開(kāi)發(fā)者妥善處理。

  5. 小程序端調(diào)用云函數(shù)時(shí),如果開(kāi)發(fā)者帳號(hào)下存在同主體的公眾號(hào),并且該用戶已經(jīng)關(guān)注了該公眾號(hào),可在云函數(shù)中通過(guò) cloud.getWXContext 獲取 UnionID。

  6. 小程序端調(diào)用云函數(shù)時(shí),如果開(kāi)發(fā)者帳號(hào)下存在同主體的公眾號(hào)或移動(dòng)應(yīng)用,并且該用戶已經(jīng)授權(quán)登錄過(guò)該公眾號(hào)或移動(dòng)應(yīng)用,也可在云函數(shù)中通過(guò) cloud.getWXContext 獲取 UnionID。

微信開(kāi)放平臺(tái)綁定小程序流程

登錄微信開(kāi)放平臺(tái) — 管理中心 — 小程序 — 綁定小程序

實(shí)現(xiàn)思路:

下面分兩步介紹一下 微信小程序 獲取unionid的過(guò)程.

1. 首先 在微信公眾平臺(tái)注冊(cè)小程序 , 然后在小程序上模擬登錄流程.

注 : 這里只是簡(jiǎn)單登錄流程, 實(shí)際中需要維護(hù)登錄態(tài), wx.checkSession() 可以檢查此時(shí)的登錄態(tài)是否過(guò)期. 若過(guò)期, 要再次調(diào)用 wx.login() , 否則調(diào)用 wx.getUserInfo() 會(huì)拿不到用戶數(shù)據(jù).

注 : 此時(shí)后臺(tái)服務(wù)器接收到你發(fā)的 code, 再用appid和appSecret等請(qǐng)求微信可以拿到openid和session_key encrypted_data, iv 等數(shù)據(jù), 通過(guò)appId, appSecret解密可以獲得openid和其他信息. (此時(shí)解出來(lái)并沒(méi)有unionid, 接下來(lái)看第二步)

2. 接下來(lái)到 微信開(kāi)發(fā)平臺(tái)去 綁定開(kāi)發(fā)賬號(hào).

一開(kāi)始我也是對(duì)開(kāi)放平臺(tái), 公眾平臺(tái)什么的有點(diǎn)懵, 后來(lái)看到開(kāi)發(fā)平臺(tái)的管理中心才明白,  這些移動(dòng)應(yīng)用, 網(wǎng)站應(yīng)用 或者公眾號(hào)/小程序 能綁定同一個(gè)微信開(kāi)發(fā)平臺(tái)賬號(hào)下, 則同一用戶,對(duì)同一個(gè)微信開(kāi)放平臺(tái)下的不同應(yīng)用,unionid是相同的。

大抵就是上圖這樣設(shè)置吧 , 立刻生效(有時(shí)也會(huì)過(guò)幾分鐘吧

相關(guān)案例查看更多