0530-3433334

网站建设 APP开发 小程序

知识

分享你我感悟

您当前位置>首页 >> 知识 >> 小程序

小程序授权获取用户头像和昵称时,获取到的是什么原因?

发表时间:2023-10-16 15:57:01

文章来源:炫佑科技

浏览次数:213

菏泽炫佑科技 菏泽炫佑小程序开发 菏泽炫佑app制作 炫佑科技

小程序授权获取用户头像昵称时,获取到的是什么原因?

到底是什么原因造成的呢? 我查看了小程序官方文档,发现官方规则又变了。

点击进去看看。 原来小程序授权获取用户头像和昵称时,获取到的是什么原因?,2022年11月8日之后小程序官方已经回收了获取用户头像的接口。

看看网友的评论,真是批评之声十足。

这确实是我的地盘,我有*终决定权。 我说什么都可以。 这有点像商店想欺负顾客。 。 。 然而,作为我们可怜的小程序开发,官方已经虐待我千百遍了,我对待官方就像我的初恋一样。 没办法,还是得用小程序吧? 。 。 。

那么石头哥在这里给大家提供几个解决办法。

1.减少基础库的临时解决方案

事实上,官方再次表示,2.27.1以下的小程序,仍然可以使用授权接口。 也就是说,只要我们的基础库低于2.27.1微信授权小程序开发,我们就可以继续获取用户头像。

抱着试一试的心态,石头哥把基础库降到了2.27.0

关掉之后,再次尝试获取头像的功能,果然还是可以获取到的。

这里需要注意的一点是,降低该值后,记得清除缓存。

这个方法虽然可以解决,但是只是暂时的,因为官方的小程序一直都有Bug,所以官方总会升级基础库。 如果我们使用这种方法太久,就会导致基础库版本落后太多。 这样的话,后续由于基础库太低,导致一些官方新功能无法使用。 所以这个解决方案只是一个临时解决方案。

2.(不推荐)官方解决方案,能够填写头像昵称

为了补偿我们,官方给我们提供了新的方案。

虽然这个解决方案可以获取头像和昵称,但是什么呢? 。 。 。 。

我们可以在这里获取用户的头像,但是官方返回给我们的头像是一个临时链接

由于是临时链接,意味着该链接很快就会过期。

如果我们想使用这个头像作为产品评论中的头像,那么我们就不能使用这个临时链接。 所以正式版有点没啥用,基本上没什么用。

这对于获取昵称很有用。

填写昵称时,为输入设置一个属性,然后您可以选择微信昵称,也可以自己输入新的昵称。

所以如果你只需要使用用户昵称而不使用头像的话,可以使用这种方法。

3.(推荐)存储自己的头像和昵称

由于官网不断变化,并没有给我们一个长期可用的头像链接,那么我们就得自己存储用户的头像,让这个头像成为一个长期可用的链接。 所以这里我们需要开发自己的后台存储分身。有以下几种方式

1.使用Java或PHP开发后端并存储头像和昵称

2.使用云端开发云存储来存储头像并生成永久链接。

这里我推荐大家使用云开发,因为云开发比较简单。 当然,如果你懂Java或者PHP开发,你可以开发自己的后端来上传和存储头像。

获取昵称和头像

先看效果图

可以看到这里可以获取昵称,还可以自定义自己的头像。 这个定制的头像存储在云存储中,并返回永久链接。

这样,如果我们以后使用这个头像和昵称,那就是永久的,不再需要担心小程序官方是否更改规则。

我会把相应的代码完整贴出来给大家。

wxml

编辑用户昵称,点击修改头像

wxss风格

.item { : 弹性; 对齐项目:; -: 空间-; :15rpx; -:1rpx 纯灰色; -: 20rpx;}.tip { 字体大小: 44rpx; :20rpx; 颜色:红色;}.项目图像{宽度:; : ; -:10rpx; : 10rpx 30rpx;}.item 输入 { flex: 1; :1px纯灰色; -:20rpx; : 5rpx 15rpx;}

js逻辑代码

const app = ()//这里需要注意的是,初始化云开发,env要替换成自己的 wx.cloud.init({ env: '-'}) const db = wx.cloud.()Page( { ( e) { this.({ name: e..value }) }, //选择 image() { wx.({ count: 1, : ['image'], : [''], //你可以指定原图是否还是压缩图片,这里使用的是压缩: ['album', ''], //从相册中选择: (res) => { .log("图片选择成功", res) let = res.[0].this.({ : }) wx.cloud.({ : new Date().() + '.png', : , // 文件路径}).then(res => { let = res..log("上传返回的头像永久链接", ) }).catch(error => { .log("上传失败", error) }) } }) },})

当然,这是基于云开发的。 如果你不了解云开发,可以观看石头录制的云开发视频:

那么关于*新版本的获取头像和昵称的问题,我在二手商城小程序的视频中也详细解释过:

炫佑科技专注互联网开发小程序开发-app开发-软件开发-网站制作等

相关案例查看更多