根据官方微信小程序开发关于登录授权API的调整,自2022年10月25日起有关API接口获取用户头像将统一返回默认灰色头像,昵称将统一返回“微信用户”。(如下图所示) 那我们如何解决?效果图:登录授权页面wxml代码如下:标签中将open-type="chooseAvatar"是用来设置用户头像,并且获得一个临时路径。{avatarUrl}}" >授权登录js代码如下:js代码主要包括三个事件(头像临时路径)、昵称、获取授权并变灰色头像和“微信用户”。//pages/show/show.jsconstdefaultAvatarUrl='https://mmbiz.qpi
1. 根据官方要求,不会要求强制性授权,头像和昵称也将被收回,给的是统一的头像和昵称,需要我们调用接口去获取微信头像和昵称。 2.通过原生的标签调用来获取微信头像和微信昵称。注意:这里的标签不能够修改,修改会导致头像回显问题和昵称获取问题。头像获取的是本地,需要我们调用上传接口上传到服务器。 3.因为我这里头像显示调用的是登录接口,将头像存到全局,所以我直接调用修改登录接口将头像和昵称进行修改将数据重新存到全局,这样就导致我的头像和昵称不能为空,不然修改后的头像和昵称会被修改为空。头像昵称确定importNavbarfrom"@/components/navBar
从基础库 2.21.2 开始支持当小程序需要让用户完善个人资料时,可以通过微信提供的头像昵称填写能力快速完善。根据相关法律法规,为确保信息安全,由用户上传的图片、昵称等信息微信侧将进行安全检测,组件从基础库2.24.4版本起,已接入内容安全服务端接口(mediaCheckAsync、msgSecCheck),以减少内容安全风险对开发者的影响。使用方法头像选择需要将 button 组件 open-type 的值设置为 chooseAvatar,当用户选择需要使用的头像之后,可以通过 bindchooseavatar 事件回调获取到头像信息的临时路径。 从基础库2.24.4版本起,若用户上传的图片
微信小程序上传头像和昵称持久化保存1.持久化步骤因为通过微信头像昵称填写功能获取到头像是一个临时头像,这个url只能一段时间内在微信访问,并且无法在公网访问这个url。所以非常有必要把这个url转成我么实际可用的头像到数据库中。让头像持久化的在微信和公网任何位置都能访问。这里我们使用url转base64字符串的方式,持久化图片成base64字符串。如果是自己上传图片还需要考虑图片大小和压缩图片的问题,这里我们直接采用微信的头像上传接口,直接帮我们快捷压缩和裁剪图片,灰常的好用。话不多说,来看代码2.页面效果3.代码实现1.uniapp小程序安装image-toolsnpmiimage-tool
1,昵称:使用到的是微信小程序文档里的apiinput框的type值设置为nickname,再使用双向绑定的方法拿到值{nickname}}"/>这个方法点击input框的时候它会弹出你当前的微信名称,基础库版本较低的话电脑上无法显示,只能在真机调试上显示2,头像{avatar}}"style="width:100px;height:100px;"/>getAvatar(e){this.setData({avatar:e.detail.avatarUrl})},点击按钮底部弹出自己的头像,也可以上传新头像返回的e.datail.avatatUrl就是微信头像的当前路径效果图:
以下是微信小程序获取用户头像和昵称的代码示例:获取用户信息授权首先,需要向用户请求授权获取其头像和昵称。可以通过调用wx.getUserProfile方法来获取用户信息,该方法会弹出授权窗口,用户可以选择是否授权。wx.getUserProfile({desc:'获取您的昵称和头像',//授权说明success:res=>{constuserInfo=res.userInfoconsole.log(userInfo.avatarUrl)//用户头像URLconsole.log(userInfo.nickName)//用户昵称},fail:err=>{console.log(err)}})显示用
官方文档:https://developers.weixin.qq.com/community/develop/doc/00022c683e8a80b29bed2142b56c01?source=indexnew&page=6https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/userProfile.html为我们小程序写了一个头像昵称上传的组件总结了下需要注意的点:我们后端服务器存的老用户的头像昵称有的是:之前早版本(wx.getUserInfo)能获取到的用户真实微信头像昵称,和后面改版(wx.ge
uni.getUserProfile已废弃//授权获取用户信息废弃 getUserProfile(e){ console.log('授权登录') uni.showLoading({ title:'加载中' }) letthat=this uni.getUserProfile({ desc:'用于完善会员资料', success:(res)=>{ uni.hideLoading(); that.nickName=res.userInfo.nickName that.avatar=res.userInfo.avatarUrl
自微信废弃uni.getUserInfo和uni.getUserProfile授权登录只能使用手机号授权了,头像和昵称则是改成了上传的方式代码写的虽然比较low但是很实用的,可以借鉴一下html 点击选择微信头像、昵称授权 昵称: 授权 jsdata(){return{avatarUrl:'', nickName:'', unoneimg:'',}}methods:{bindblur(e){ this.nic
这一次仍然是getUserProfile()API,不知道官方为啥纠结这个问题。下面看看官方的说法,看完后不知道有没有人跟我一样是不是觉得他们官方程序员没活干闲着蛋疼。微信官方公告:https://developers.weixin.qq.com/community/develop/doc/00022c683e8a80b29bed2142b56c01总结:getUserProfile()以后获取的是灰色头像和微信用户昵称解决方法一直接通过标签获取头像和昵称,但是我在虚拟机可以显示,真机没办法显示,此方法仅供参考viewclass="avatar">open-datatype="userAvat