您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關小程序如何獲取openid及用戶信息的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
微信小程序獲取openid及用戶信息的方法
1. 獲取openid
1.1 獲取code
調用接口獲取登錄憑證(code)進而換取用戶登錄態信息,包括用戶的唯一標識(openid) 及本次登錄的會話密鑰(session_key)。用戶數據的加解密通訊需要依賴會話密鑰完成。
wx.login({ //獲取code success: function(res) { code = res.code //返回code } })
1.2 獲取openid
拿到上一步獲取的code,結合小程序 appid 和 secret 請求接口https://api.weixin.qq.com/sns/jscode2session?appid=APPID&secret=SECRET&js_code=JSCODE&grant_type=authorization_code 換取openid,與 openid 一同被返回的,還包括 session_key,其中 session_key 是對用戶數據進行加密簽名的密鑰。為了自身應用安全,session_key 不應該在網絡上傳輸。
wx.request({ url: 'https://api.weixin.qq.com/sns/jscode2session?appid=APPID&secret=SECRET&js_code='+ code +'&grant_type=authorization_code', data: {}, header: { 'content-type': 'application/json' }, success: function(res) { openid = res.data.openid //返回openid } })
2. 獲取用戶信息
2.1 在app.js中創建該全局方法
//app.js getUserInfo:function(cb){ var that = this if(this.globalData.personInfo){ typeof cb == "function" && cb(this.globalData.personInfo) }else{ //調用登錄接口 wx.login({ success: function () { wx.getUserInfo({ success: function (res) { that.globalData.personInfo = res.userInfo typeof cb == "function" && cb(that.globalData.personInfo) } }) } }) } }
2.2 實例化全局方法獲取用戶信息
var that = this; //調用應用實例的方法獲取全局數據 app.getUserInfo(function (personInfo) { //更新數據 that.setData({ personInfo: personInfo }) })
感謝各位的閱讀!關于“小程序如何獲取openid及用戶信息”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。