色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術文章
文章詳情頁

微信小程序授權登錄的最新實現方案詳解(2023年)

瀏覽:19日期:2022-06-01 16:01:02
目錄
  • 微信授權登錄
    • wx.getUserProfile方法獲取用戶信息
  • 退出登錄
    • 與本地緩存wx.setStorageSync結合使用
      • 總結
        • 補充:wx.getUserProfile已被回收

          微信授權登錄

          我們的項目開發有時候用到用戶的一些信息,比如頭像,昵稱等。目前小程序為我們提供好了wx.getUserProfile方法以供獲取用戶信息,它的使用非常簡單。

          wx.getUserProfile方法獲取用戶信息

          不推薦使用 wx.getUserInfo 獲取用戶信息,自2021年4月13日起,getUserInfo將不再彈出彈窗,并直接返回匿名的用戶個人信息

          推薦使用 wx.getUserProfile 獲取用戶信息,開發者每次通過該接口獲取用戶個人信息均需用戶確認。

          對應的官方文檔:https://developers.weixin.qq.com/miniprogram/dev/api/open-api/user-info/wx.getUserProfile.html

          簡單示例代碼

          官網的示例代碼寫得較為復雜,這里我寫了一些簡單的代碼,以便學習。

          <!-- userInfo如果為空證明沒有登錄 --><button wx-if="{{!userInfo}}" bindtap="login">獲取頭像昵稱</button><view wx:else>    <image src="{{userInfo.avatarUrl}}"></image>    <text>{{userInfo.nickName}}</text></view>
          .userInfo{    display: flex;    flex-direction: column;    align-items: center;}.userInfo image{    width: 200rpx;    height: 200rpx;    border-radius: 200rpx;}
          Page({    data: {userInfo: "", //用于存放獲取的用戶信息    },    login() {wx.getUserProfile({    desc: "必須授權才能繼續使用", // 必填 聲明獲取用戶個人信息后的用途,后續會展示在彈窗中    success:(res)=> { console.log("授權成功", res);this.setData({     userInfo:res.userInfo})    },    fail:(err)=> {console.log("授權失敗", err);    }})    }})

          退出登錄

          由于上面用的判斷是否登錄,是用userInfo是否為空判斷的,所以我們退出登錄只要把userInfo清空就行了,就是這么簡單粗暴!

          與本地緩存wx.setStorageSync結合使用

          如果沒有本地緩存,每次打開小程序都需要再授權一次,太麻煩了,而且本地緩存中的數據其他頁面也能使用,不用重復獲取。

          完整代碼

          <!-- userInfo如果為空證明沒有登錄 --><button wx-if="{{!userInfo}}" bindtap="login">獲取頭像昵稱</button><view wx:else>    <image src="{{userInfo.avatarUrl}}"></image>    <text>{{userInfo.nickName}}</text>    <button type="warn" bindtap="loginOut">退出登錄</button>    </view>
          Page({    data: {userInfo: "", //用于存放獲取的用戶信息    },    onLoad(){let user = wx.getStorageSync("user")this.setData({  userInfo: user})    },    // 授權登錄    login() {wx.getUserProfile({    desc: "必須授權才能繼續使用", // 必填 聲明獲取用戶個人信息后的用途,后續會展示在彈窗中    success:(res)=> { console.log("授權成功", res);wx.setStorageSync("user",res.userInfo)this.setData({     userInfo:res.userInfo})    },    fail:(err)=> {console.log("授權失敗", err);    }})    },    // 退出登錄    loginOut(){this.setData({     userInfo:""})// 清空緩存wx.setStorageSync("user",null)    }    })

          總結

          wx.getUserProfile用于授權登錄,獲取用戶信息,但它返回的加密數據中不包含 openId unionId 字段,只包含頭像昵稱,所以需要其他信息的需要結合云開發云函數使用

          補充:wx.getUserProfile已被回收

          wx真的是說改就改,之前就已經改過好幾次了

          調整原因:

          獲取用戶頭像昵稱,可以使用「頭像昵稱填寫能力」(基礎庫 2.21.2 版本開始支持,覆蓋iOS與安卓微信 8.0.16 以上版本)

          到此這篇關于微信小程序授權登錄的最新實現方案的文章就介紹到這了,更多相關微信小程序授權登錄內容請搜索以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持!

          標簽: JavaScript
          相關文章:
          主站蜘蛛池模板: 日本理论片免费高清影视在线观看 | 亚洲精彩 | 欧美亚洲国产成人精品 | 亚洲第一大网站 | 正在播放的国产a一片 | 欧美日韩国产高清一区二区三区 | 日韩激情中文字幕一区二区 | 玖草在线观看 | 久久国产一片免费观看 | 久久久久久国产精品免费免费 | 亚洲国产人成中文幕一级二级 | 成年人国产 | 五月色婷婷综合开心网4438 | 在线一区播放 | 91久久精品国产免费一区 | 欧美一级毛片日本 | 免费人成黄页网站在线观看 | 欧美男人天堂 | 国产精品久久久久久久网站 | 六月丁香婷婷色狠狠久久 | 免费一级特黄a | 国产a级三级三级三级中国 国产a级特黄的片子视频 | 成人免费久久精品国产片久久影院 | 99在线观看精品免费99 | 长腿校花被啪到腿软视频 | 亚洲国产高清视频在线观看 | 国内精品久久久久影院亚洲 | 欧美日韩国产在线人成dvd | 伊人色在线视频 | 手机看成人片 | 韩国美女爽快一级毛片黄 | 播播网手机在线播放 | 国产精品日韩一区二区三区 | 性猛交毛片 | 欧美真人视频一级毛片 | 欧美大片在线观看成人 | 日本高清一本二本三本如色坊 | 好吊妞国产欧美日韩视频 | 经典三级久久久久 | 久久国产精品无码网站 | 久久午夜国产片 |