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

微信小程序調(diào)整登錄、用戶信息相關(guān)接口得到的坑 - 新聞資訊 - 云南小程序開發(fā)|云南軟件開發(fā)|云南網(wǎng)站建設(shè)-昆明葵宇信息科技有限公司

159-8711-8523

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

知識(shí)

不管是網(wǎng)站,軟件還是小程序,都要直接或間接能為您產(chǎn)生價(jià)值,我們?cè)谧非笃湟曈X表現(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) >

微信小程序調(diào)整登錄、用戶信息相關(guān)接口得到的坑

發(fā)表時(shí)間:2021-4-13

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

瀏覽次數(shù):129

前提是這樣的:

為讓程序員更好的加班,平臺(tái)將進(jìn)行以下調(diào)整:

  1. 2021年2月23日起,若小程序已在微信開放平臺(tái)進(jìn)行綁定,則通過(guò) wx.login 接口獲取的登錄憑證可直接換取unionID
  2. 2021年4月13日后發(fā)布的小程序新版本,無(wú)法通過(guò) wx.getUserInfo 與 <button open-type="getUserInfo"/> 獲取用戶個(gè)人信息(頭像、昵稱、性別與地區(qū)),將直接獲取匿名數(shù)據(jù)(包括 userInfo 與 encryptedData 中的用戶個(gè)人信息),獲取加密后的 openID 與 unionID 數(shù)據(jù)的能力不做調(diào)整。此前發(fā)布的小程序版本不受影響,但如果要進(jìn)行版本更新則需要進(jìn)行適配。

坑是這樣的:

以前: wx.getUserInfo 與 <button open-type="getUserInfo"/> 除了可以獲取到用戶的頭像昵稱, 還可以獲取到 encryptedData 和 iv

這兩個(gè)是用來(lái)解析 openID 、 unionID 的

拿我們的項(xiàng)目來(lái)說(shuō), 通過(guò) getUserInfo 基本一套就可以帶走用戶昵稱頭像及 openID 、 unionID

現(xiàn)在: wx.getUserProfile 雖然也可以獲取到encryptedData和iv, 但是從這里是解析不出來(lái) openID 、 unionID 的

也就是說(shuō), 指望一鍵更換的小伙伴們想多了, 如果你原來(lái)的邏輯是直接往后端傳入 encryptedData 和 iv 然后獲取 openID 、 unionID 是行不通的.

所以怎么拿呢? 還得調(diào)用一遍 wx.getUserInfo …

和諧而親切的官方并沒有告訴你 wx.getUserProfile 是拿不到這倆唯一ID的, 不過(guò)他們還是細(xì)心而體貼的給 wx.getUserProfile 放進(jìn)去了 encryptedData 和 iv ….

現(xiàn)有解決方案(拋磚引玉), 如果不想大改的情況下:

后端在原有接受 encryptedData 和 iv 的基礎(chǔ)上再增加 userInfo 的參數(shù)

然后小程序傳參的時(shí)候是這樣:

wx.getUserProfile({
     desc: '用于完善會(huì)員資料',
     success: (res) => {
         let userInfo = res.userInfo;
         wx.getUserInfo({
             success: (res) => {
                 let wxUserInfo = res;
                 API.wechatRegister({
                     userInfo: userInfo, // 用于獲取userInfo
                     encryptedData: wxUserInfo.encryptedData, // 用于解密openID、unionID
                     iv: wxUserInfo.iv,// 用于解密openID、unionID
                 })
             }
         })
     }
 });

另外, 需要注意的是

wx.getUserProfile 在 2.16.0之前的版本是沒有encryptedData和iv的 , 這個(gè)需要特別注意

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