使用用户授权方式获取微信头像昵称

使用用户授权方式获取微信头像昵称

注:以uniapp为例,部分写法与原生微信有所不同

老版本

可直接通过wx.getUserProfile的方式获取用户信息,然后填充头像和昵称,但在2022 年 10 月 25 日已被回收,返回信息为默认灰色头像和昵称:'微信用户',

以下方式仅针对开发调试,不上线的情况:

在微信开发者工具中:右上角详情 -> 本地设置 -> 调试基础库-> 选择2.21.2~2.27.0之间的版本-> 推送-> 确定

设置后可在开发版本使用这种方式获取用户信息

参考文档:小程序用户头像昵称获取规则兼容文档

typescript 复制代码
<image class="img" :src="userInfo.avatarUrl ? userInfo.avatarUrl : '/static/images/headers.jpg'" @click="getUser"></image>
<text>{{ userInfo.nickName || '未登录' }}</text>
​
getUser() {
    wx.getUserProfile({
    desc: '用于完善用户信息', // 新版已弃用,只能获取默认头像和昵称,然后onChooseAvatar方法获取头像
    success: (res) => {
        console.log(res)
        this.userInfo = res.userInfo;
        this.nickname = this.userInfo.nickName;
    }
  })
},

新版本

参考文档:头像昵称填写能力及对应原生写法

头像

需要将 [button] 组件 open-type 的值设置为 chooseAvatar,当用户选择需要使用的头像之后,可以通过 bindchooseavatar(对应uniapp中的写法如下) 事件回调获取到头像信息的临时路径。

昵称

需要将 [input] 组件 type 的值设置为 nickname,当用户在此input进行输入时,键盘上方会展示微信昵称

ini 复制代码
<button v-if="userInfo.avatarUrl" class="avatar-wrapper" open-type="chooseAvatar" @chooseavatar="onChooseAvatar">
    <image class="img" :src="userInfo.avatarUrl ? userInfo.avatarUrl : '/static/images/headers.jpg'"></image>
</button>
<input type="nickname" @blur="handleBlur()" :focus="focus" v-model="nickname">
javascript 复制代码
// 获取微信头像
onChooseAvatar(e) {
    this.userInfo.avatarUrl = e.detail.avatarUrl; //头像地址
    uni.setStorageSync("avatarUrl",this.avatarUrl)
},
// 获取用户昵称
handleBlur() {
    if(this.nickname==''){
        uni.showToast({
            title:"不能为空",
            icon:'error'
        })
    }else{
        this.isEdit = false
    }
},

另外

wx.authorize方法中的scope.userInfo也不能再使用,

通过wx.createUserInfoButton弹出用户授权是小游戏 的方法,不是小程序!!!

可以使用的部分参考文档:用户授权列表

相关推荐
難釋懷15 分钟前
微信小程序全局配置
微信小程序·小程序
Enti7c19 分钟前
微信小程序核心知识点速览
微信小程序·小程序
鸭鸭梨吖20 小时前
微信小程序---下拉框
微信小程序·小程序
CRMEB定制开发21 小时前
CRMEB Pro版前端环境配置指南
前端·微信小程序·uni-app·商城源码·微信商城·crmeb
mon_star°1 天前
搭建一款结合传统黄历功能的日历小程序
微信·微信小程序·小程序·微信公众平台
The_era_achievs_hero1 天前
微信小程序91~100
微信小程序·小程序
假装我不帅1 天前
微信小程序下拉加载更多实现
微信小程序·小程序
高压锅_12201 天前
Cursor+Coze+微信小程序实战: AI春联生成器
人工智能·微信小程序·notepad++
2301_805962931 天前
微信小程序控制空调之微信小程序篇
微信小程序·小程序
Ama_tor1 天前
mini-program01の系统认识微信小程序开发
微信小程序·小程序