您好,登錄后才能下訂單哦!
今天小編給大家分享一下微信小程序中怎么實現登錄的相關知識點,內容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。
1:首先需要一個按鈕觸發事件
2:調用微信小程序的登錄接口wx.login,拿到code
3:調用微信小程序的獲取用戶信息的接口wx.getUserProfile,拿到用戶的個人信息
4:拿到的個人信息調用后臺的接口,把個人信息傳給后臺,登錄成功并把相關信息存儲在本地的緩存中,方便之后的開發使用
wxml:
<view> <button bindtap="login">登錄</button> </view>
js:
//后臺接口需要的一下參數(具體要和后臺的同事商量) loginInfo: { code: '', spread_spid: 0, spread_code: 0 }
調用微信小程序的登錄接口:
wx.login(Object object)
調用微信獲取用戶個人信息的接口:
wx.getUserProfile(Object object)
//登錄按鈕觸發的事件 login(){ let that = this //調用微信小程序的登錄接口 wx.login({ success(e) { that.data.loginInfo.code = e.code //拿到的code存儲在data中 wx.showModal({ title: '溫馨提示', content: '微信授權登錄后才能正常使用小程序功能', cancelText: '拒絕', confirmText: '同意', success( sucessInfo ) { //調用微信小程序的獲取用戶信息的接口 wx.getUserProfile({ desc: '用于完善會員資料', // 聲明獲取用戶個人信息后的用途 lang: 'zh_CN', success(info) { //把獲取到的信息復制到data中的loginInfo中 that.data.loginInfo = Object.assign( that.data.loginInfo, info ) //調用后臺的接口,把所有整合的個人信息傳過去 that.handlerLogin( that.data.loginInfo ) }, fail(e) { console.log('獲取用戶信息失敗', e) } }) }, fail() { console.log("拒絕") }, complete() {} }) }, fail(e) { console.log('fail', e) wx.showToast({ title: '網絡異常', duration: 2000 }) return } }) }
wx.setStorageSync() :將數據存儲在本地緩存中,
wx.setStorageSync(string key, any data)
wx.getStorageSync('token') :獲取本地緩存的數據
any wx.getStorageSync(string key)
//調用后臺的登錄接口 handlerLogin( loginInfo ) { let that = this //login是后臺接口封裝的方法 login( loginInfo ).then(( res ) => { console.log('登錄成功', res) let { cache_key, expires_time, token, userInfo } = res.data //把用戶信息存儲到storage中,方便其它地方使用 wx.setStorageSync('cache_key', cache_key) wx.setStorageSync('expires_time', expires_time) wx.setStorageSync('token', token) wx.setStorageSync('isLog', true) wx.setStorageSync('userInfo', JSON.stringify( userInfo )) wx.setStorageSync('loginRecord', new Date().getTime()) }) .catch(( res ) => { console.log('catch', res) }) .finally(() => { console.log('finally') }) }
以上就是“微信小程序中怎么實現登錄”這篇文章的所有內容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學習更多的知識,請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。