其实获取用户信息,一种是获取权限的,一种是不用获取权限,前者获取到的信息更多,包含一些敏感信息,包括给getaccessToken接口需要传的参数,后者就是简单获取一些头像、昵称等信息,具体可参考文档https://developers.weixin.qq.com/miniprogram/dev/component/open-data.html
第一种:获取权限的
跟上一篇获取手机号权限方式一样的,都是通过button按钮触发,调用权限弹框:
代码:
<button open-type="getUserInfo" bindgetuserinfo="onGetUserInfo">登录获取个人信息权限</button>
onGetUserInfo(e) {
if (e.detail.userInfo !== undefined) { // 允许
app.loginfn()
} else { // 拒绝
}
}
如果用户允许的话,就可以调用获取用户信息的接口wx.getUserInfo:
wx.login({
success: resCode => {
// 发送 res.code 到后台换取 openId
that.globalData.code = resCode.code
wx.getSetting({
success: res => {
if (res.authSetting['scope.userInfo']) {// 已经授权
wx.getUserInfo({
success: rsl => {
// 获取用户信息后的操作
}
})
}
}
})
}
})
第二种:通过open-data
<open-data type="userAvatarUrl"></open-data>
<open-data type="userNickName"></open-data
详细参考文档:https://developers.weixin.qq.com/miniprogram/dev/component/open-data.html