1)用【4.36版的Hbuilder X】开发1个系统
2)用【VUE3版的Uniapp框架】,开发上述的系统
3)上述系统是1个【微信小程序】的项目
4)用【微信开发者工具的真机调试功能】执行以下getUserInfo方法中的【const res = await uni.getUserProfile({
desc: '获取用户基本信息'
});
】语句后,不能获得用户的微信中的个人数据,以下是执行后返回的数据:res.userInfo: Object
city: ""
country: ""
gender: 0
is_demote: true
language: ""
nickName: "微信用户"
province: ""
constructor: (...)
hasOwnProperty: (...)
isPrototypeOf: (...)
propertyIsEnumerable: (...)
toLocaleString: (...)
toString: (...)
valueOf: (...)
__defineGetter__: (...)
__defineSetter__: (...)
__lookupGetter__: (...)
__lookupSetter__: (...)
[[Prototype]]: Object
5)我需要做什么工作,才能用【await uni.getUserProfile({
desc: '获取用户基本信息'
})】语句,获得【用户的微信中的个人数据】?
6)getUserInfo方法
async getUserInfo() {
try {
const res = await uni.getUserProfile({
desc: '获取用户基本信息'
});
const userInfo = res.userInfo;
this.userAvatar = userInfo.avatarUrl;
this.userName = userInfo.nickName;
this.userGender = userInfo.gender === 1 ? '男' : userInfo.gender === 2 ? '女' : '未知';
this.userRegion = userInfo.province + ' ' + userInfo.city;
uni.showToast({
title: '获取用户信息成功',
icon: 'success'
});
} catch (error) {
console.error('获取用户信息错误:', error);
uni.showToast({
title: '获取用户信息失败',
icon: 'none'
});
}
}
首先完善隐私保护指引,登录小程序后台,点击logo,账号设置,基本设置,服务内容声明,获取头像昵称用途,示例代码参考能力文档:https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/userProfile.html
你需要做开发工作才能了解什么是微信小程序隐私协议,在去了解一下当前使用的api有什么限制,现在这个接口并不能直接获取微信中的昵称和头像返回的都是空值,需要引导用户自行去填写,使用这个api还得在微信小程序后台添加隐私协议并申请审核通过之后才能使用这api
怎么操作都无法获取,该能力已经下线。现在只能用头像昵称填写功能。参考https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/userProfile.html
getUserProfile 接口有调整,目前已经不能获取用户微信头像和昵称,默认返回的是灰色头像和“微信用户”,也没有授权弹窗了(除了旧版本微信[基础库版本低于2.27.1]和接口调整生效期前发布的小程序版本外),参考公告:https://developers.weixin.qq.com/community/develop/doc/00022c683e8a80b29bed2142b56c01
当前如果有头像和昵称获取的需要,只能让用户自己填写:https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/userProfile.html