unicloud持久化小程序获取的临时微信头像url路径(教程)

自 2022 年 10 月 25 日后,用户头像昵称获取规则作了调整:getUserInfo 接口获取用户头像将统一返回默认灰色头像,昵称将统一返回 “微信用户”。

如业务需获取用户头像昵称,可以使用「头像昵称填写能力

头像选择

需要将 button 组件 open-type 的值设置为 chooseAvatar,当用户选择需要使用的头像之后,可以通过 bindchooseavatar 事件回调获取到头像信息的临时路径。

<button class="avatarBtn" open-type="chooseAvatar" @chooseavatar="onChooseAvatar">

	 onChooseAvatar(e) {
           // 选中的微信头像或者相册图片的临时url路径
	       console.log(e.detail.avatarUrl);
     }

 这里获取到的url地址是微信返回的一个临时的url路径,不能直接交给服务器存到数据库里面,因为这个url会过期,本次获取了能展示出来,但是清理缓存再次重新登录,获取用户数据的时候就会报错,打印出来的临时url地址无法正常访问~所以一开始选中头像的时候我们可以把微信返回的头像的临时url路径上传到unicloud云存储空间,代码如下:

详细文档请进这里边看:概述 | uniCloud (dcloud.net.cn) 


      uniCloud.uploadFile({
        filePath: filePath,
        cloudPath: 'a.jpg',
        onUploadProgress: function(progressEvent) {
          console.log(progressEvent);
          var percentCompleted = Math.round(
            (progressEvent.loaded * 100) / progressEvent.total
          );
        },
        success: function(res) {
          //这里返回的fileID就是上传到云存储空间之后返回的上传的头像文件路径
          console.log(res.fileID)
}
})

fileID中的url路径直接存到云数据库里面作为用户表的头像图片url路径

这样重复登录的时候就可以正常渲染头像啦!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

在下逼王尘少

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值