跟着小猪来做小程序开发:获取用户跟着小猪来做小程序开发:获取用户openid
微信小程序的默认demo其中有一段是涉及到用户的用户信息的,我们在小程序里也看到了我的头像和昵称信息。
研究下他的代码,主要在 app.js 文件中。
//app.js
App({
onLaunch: function () {
//调用API从本地缓存中获取数据
var logs = wx.getStorageSync('logs') || []
logs.unshift(Date.now())
wx.setStorageSync('logs', logs)
},
getUserInfo:function(cb){
var that = this
if(this.globalData.userInfo){
typeof cb == "function" && cb(this.globalData.userInfo)
}else{
//调用登录接口
wx.login({
success: function () {
wx.getUserInfo({
success: function (res) {
that.globalData.userInfo = res.userInfo
typeof cb == "function" && cb(that.globalData.userInfo)
}
})
}
})
}
},
globalData:{
userInfo:null
}
})
上述代码从15行开始涉及到调用登录接口。这里调用了小程序的api: wx.login 。这里说明下,小程序给开发者封装好的API都是直接使用js的
方法来调用,开发者直接使用类似 wx.login() 的方法就可以与微信的服务器进行交互,开发者不需要知道小程序框架到底调用了哪个地址,传
了哪些参数。
紧接着调用 wx.getUserInfo 接口,该接口可直接返回用户数据.具体调用方法可参考 官方文档
为了查看返回结果,我们在代码18行位置插入两句打印日志代码,可以查看具体的结果。
wx.getUserInfo({
success: function (res) {
console.log(res.userInfo)
console.log(res.encryptedData)
that.globalData.userInfo = res.userInfo
可以看到控制台中打印出了对应的结果。