uniapp 微信小程序授权登录getUserInfo获取不到用户的昵称和头像了
今天上班,满心欢喜的说坐等下午上线,然后就发现用户授权信息不行了,uniapp 小程序授权登录时 获取不到用户头像等信息 只能得到灰色缺省头像以及nickname 为“微信用户”等。这是多么尴尬的问题啊。直接说一下问题和解决方法吧。
1、之前的授权用户头像个昵称方法:
<button open-type="getUserInfo" @getuserinfo="getUserInfo"></button>
但如今,却只能得到一个缺省的灰色头像,和nickname = “微信用户”,两个数据,其它的年龄以及地区等什么都没有,更别提授权弹出框了!!!!!
查看官网如下图才知道API更新了:
- 获取用户信息接口变了,改用wx.getUserProfile(Object object)
https://developers.weixin.qq.com/miniprogram/dev/api/open-api/user-info/wx.getUserProfile.html - 定位增加了频率限制
https://developers.weixin.qq.com/community/develop/doc/000aee91a98d206bc6dbe722b51801?blockType=1
2、直接说解决方法吧
- 查阅了很多网页,试了各种办法!
- 最后发现了一个官方的公告,公告说 在4月13日后才会启用getUserInfo()这个系列,至于为什么提前。。。
- 意思就是现在已经不能用getUserInfo了!
- 正确的使用方法是,将uni.getUserProfile()当作普通接口调用就行!
// 注意不能再 open-type="getUserInfo" <text @click="getUserInfo">请登录</text> <script> getUserInfo(){ console.log("一遍成功") uni.getUserProfile({ desc:'Wexin', // 这个参数是必须的 success:res=>{ console.log(res) }, fail:err=>{ console.log(err) } }) } </script>
亲试有效,不用加班哈哈哈。