附解决方案,小程序获取的用户信息中昵称图然变成了“微信用户”,而且头像也显示不了?
最近好多小伙伴在使用getUserInfo获取小程序用户昵称和头像时,图然变成了下面这样。
错误图示
很多小伙伴肯定就疑虑了,明明我代码没有做任何改动啊,怎么突然就这样了呢。还记得我们之前应该长这样啊。
石头哥最近也遇到这样的问题了,我第一时间想到的原因有两个
1,微信官方服务器挂了(概率很小)
2,微信又改规则了。。。
带着这样的疑虑,去问了下微信小程序官方人员。得到的答案是。。。
心理一万个。。。。。 哎,没办法,既然官方说改规则,咱们作为弱势群体,只能跟着官方规则来改了啊。
代码改动
好在代码改动量不是很大,基本上改动5行代码就可以完事了。下面就来教大家如何改动代码吧。
1,先来看看老代码
js里的老代码
可以看到我们用老代码,获取的就是下面这样灰色的头像和 微信用户 这样的昵称
2,认识wx.getUserProfile
其实这个wx.getUserProfile和我们之前使用button结合open-type="getUserInfo" 和bindgetuserinfo事件获取用户信息没有太大区别,所以我们先来认识下wx.getUserProfile
这样改动其实还有点点好处,就是我们只需要在点击事件里调用wx.getUserProfile就可以调起授权弹窗,没必要非得在button组件里使用点击事件了。
解决问题的代码
1,wxml里的代码改动
2 js里的代码改动
这里我们主要是使用
wx.getUserProfile({ desc: '用于完善会员资料', // 声明获取用户个人信息后的用途,后续会展示在弹窗中,请谨慎填写 success: (res) => { console.log("获取用户信息成功", res) }, fail: res => { console.log("获取用户信息失败", res) } })
可以看到能成功的调起授权弹窗了
并且可以获取真实的昵称了
其实到这里我们就改造好了,其实改造起来也就几行代码的事,麻烦的就是我们的小程序要因为这个改动要重新提交审核了。。。。
补充知识点:保存用户信息到缓存
如果我们每次进入页面都让用户点击授权,就有点太烦锁了,其实可以在第一次授权成功获取用户信息的时候把数据缓存在本地缓存的。下面就来教大家如何缓存用户信息。
代码以及完整的注释都贴出来给到大家
主要就是要调用
wx.setStorageSync存数据到本地缓存
wx.getStorageSync取缓存数据
wxml页面的代码也贴出来给到大家
还有我们的wxss样式
到这里我们就把官方的这个坑给填好了。
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
恶意软件导致美国八个州汽车无法年检
据悉,3月30日Applus Technologies的车辆排放测试平台遭受了“恶意软件”攻击,导致IT系统被断开。 Applus Technologies美国首席执行官Darrin Greene表示:“不幸的是,此类事件相当普遍,没有人能幸免。对于由此造成的任何不便,我们深表歉意。我们知道我们的客户和许多车主依靠我们的技术,我们致力于尽快恢复正常运行。” 目前,Applus Technologies仍然无法提供恢复服务的时间表,因为州政府要求他们实施严格的缓解和测试流程。 “很遗憾,我们无法提供时间表。随着更多信息的出现,我们将定期更新服务状态。重要的是请注意,我们要确保我们能够在重新启动系统之前已解决了所有问题,以避免在程序重新启动并运行后产生任何其他延迟或不便。” “必须确保程序的每个组件都没有恶意软件,经过全面测试并可以正常运行,然后才能使程序重新上线。测试过程将涉及我们所有机构以及用于执行机动车检测的工作站设备”,Applus Technologies的公开信中写道。 受影响州机动车管理部门(DMV)警告说,汽车检测可能要到4月6日才能恢复,甚至可能更迟。 由于系统瘫痪时间可...
- 下一篇
基于角色访问控制RBAC权限模型的动态资源访问权限管理实现
RBAC权限模型(Role-Based Access Control) 前面主要介绍了元数据管理和业务数据的处理,通常一个系统都会有多个用户,不同用户具有不同的权限,本文主要介绍基于RBAC动态权限管理在crudapi中的实现。 概要 RBAC简介 RBAC权限模型(Role-Based Access Control)即:基于角色的权限控制。模型中有几个关键的术语: 用户:系统接口及访问的操作者 权限:能够访问某接口或者做某操作的授权资格 角色:具有一类相同操作权限的用户的总称 用户角色权限关系 一个用户有一个或多个角色 一个角色包含多个用户 一个角色有多种权限 一个权限属于多个角色 Spring security Spring Security是Spring项目组中用来提供安全认证服务的框架,可以很方便的实现动态权限管理。 表单配置 系统内置5个表单,这些表单和权限相关,和具体业务无关 资源resource 其中url是ANT格式表达式,用于配置url来确定是否拥有某个资源的权限。 用户user 用户表记录登录用户信息 角色role 角色 用户角色行userRoleLine 用户和角...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS6,CentOS7官方镜像安装Oracle11G
- CentOS8安装Docker,最新的服务器搭配容器使用
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- CentOS7,8上快速安装Gitea,搭建Git服务器
- SpringBoot2整合Thymeleaf,官方推荐html解决方案
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- Hadoop3单机部署,实现最简伪集群