微信小程序获取用户信息
微信小程序获取用户信息接口做了调整:
2021年4月28日24时后发布的小程序新版本,无法通过wx.getUserInfo与获取用户个人信息(头像、昵称、性别与地区),将直接获取匿名数据(包括userInfo与encryptedData中的用户个人信息),获取加密后的openID与unionID数据的能力不做调整。
开发者在开发中也需要进行调整,需要用getUserProfile接口获取用户信息。
//通过getUserProfile接口调用个人信息
wx.getUserProfile({
lang: 'zh_CN',
desc: '用于完善个人资料',
success: (res) => {
//wx.setStorageSync('userInfo', res.userInfo);//可缓存个人信息
//如需向后台发送code,需进行以下登录操作,否则可直接通过getUserProfile接口调用个人信息
wx.login({
success: (login_res) => {
code = login_res.code;
},
});
},
// 失败回调
fail: (err) => {
console.log(err)
}
});
注意:
可能使用的时候会出现以下报错:
这是因为getUserProfile接口需要用户手动点击才能成功触发。
解决办法:通过按钮绑定点击事件给用户手动触发,如下图:
<button class="btn" bindtap="formSubmit">点击</button>
注意:
需要在app.json中添加全局配置
"permission": {
"scope.userLocation": {
"desc": "请确认授权"
}
}