微信小程序用户登录信息过期处理

news/2025/1/16 7:57:15/

微信小程序用户登录信息过期处理

由于小程序对获取用户信息的新规定,获取用户信息必须通过一个button调出获取窗口,然而用户的token会过期,而本地存在的缓存可能会让用户误以为自己仍处于登录状态,但实际使用时因为用户此时登录信息已经过期并未有openid导致信息渲染不完全从而无法成功使用小程序。
问题的麻烦就在于此时用户对小程序其实是已经授权的,我们无法通过院线的授权登录按钮实现刷新登录信息,可是我们总不能让用户每次都把小程序删除后重新登录小程序,又麻烦用户体验也差。
我的解决办法是通过ui优化重写写一个提示用户重新授权的button,并在button的方法调用中无论如何将用户的登录信息改为false,从而实现重新登录。

效果如图:
用户点击登录后即可重新实现获取用户信息,刷新页面,并无需唤起授权窗口。在这里插入图片描述

wxml:

<view class="text-center text-orange">
<text class="text-center text-orange">登录信息过期时请重新授权</text>
<button class="text-blue cu-btn" open-type="getUserInfo" bindgetuserinfo="bindgetuserinfo">登录</button>
<text>哦(*╹▽╹*)</text></view>

js:

bindgetuserinfo: function () {self = thisthis.logged = false// 调用云函数if (!this.logged) {wx.cloud.callFunction({name: 'login',data: {},success: res => {console.log('[云函数] [login] user openid: ', res.result.openid)this.logged = truewx.setStorageSync('openid', res.result.openid)wx.getUserInfo({success: res => {const myavatarUrl = res.userInfo.avatarUrlconst mynickName = res.userInfo.nickNameconst mymanager = falsewx.cloud.callFunction({name: 'addUser',data: {avatarUrl: myavatarUrl,manager: mymanager,nickName: mynickName,openid: wx.getStorageSync("openid")},success: function (res) {console.log(res)self.onLoad();self.onShow();},fail: function (res) {console.log(res)if (getCurrentPages().length != 0) {//刷新当前页面的数据getCurrentPages()[getCurrentPages().length - 1].onLoad()}}})}})},fail: err => {console.error('[云函数] [login] 调用失败', err)if (getCurrentPages().length != 0) {//刷新当前页面的数据getCurrentPages()[getCurrentPages().length - 1].onLoad()}}})}}  

http://www.ppmy.cn/news/789228.html

相关文章

过期的归档文件

list archivelog all;删除归档 crosscheck archivelog all;验证log_archive_dest参数指定目前下的文件&#xff0c;当手工删除了归档日志以后&#xff0c;RMAN备份会检测到日志缺失&#xff0c;从而无法进一步继续执行RMAN备份&#xff0c;所以此时需要手工执行crosscheck过程…

微信文件七天失效?微信文件轻松备份到自己的印象笔记、onedrive

是不是经常遇到这种情况&#xff0c;当我们需要使用某个文件的时候&#xff0c;我们想到朋友&#xff08;同事&#xff09;用微信发给过我们&#xff0c;可是当我们打开聊天记录去寻找我们需要的文件的时候&#xff0c;却发现上面赫然写着“文件已被清理或过期”。 如果文件是…

微信如何保存文件?企业微信如何下载文件?

我们经常用微信传输文件&#xff0c;用企业微信办公时也需要经常保存和下载文件&#xff0c;如何操作和设置呢&#xff1f; 个人微信如何保存文件&#xff1f; 大家对个人微信传输文件应该非常熟悉了&#xff0c;用“文件传输助手”可以很方便的将电脑上的文件&#xff0c;传输…

【微信小程序】缓存过期时间的相关设置

微信小程序缓存机制介绍 每个微信小程序都可以有自己的本地缓存&#xff0c;可以通过 wx.setStorage&#xff08;wx.setStorageSync&#xff09;、wx.getStorage&#xff08;wx.getStorageSync&#xff09;、wx.clearStorage&#xff08;wx.clearStorageSync&#xff09;可以对…

防止文件过期的设置,2招解决

相信大家都有在手机端或者电脑端上传微信文件&#xff0c;但是由于各种原因&#xff0c;过段时间再去点开&#xff0c;就会弹出提示&#xff1a;文件已过期或已被清理。有没有防止文件过期的设置呢&#xff1f;上期小编总结了找回过期微信文件的方法&#xff0c;这期就给大家介…

微信收藏夹文件保存在服务器安全吗,开启这个功能,微信文件再也不怕过期

上上周跟大家的安利过一个跟微信相关的轻量应用&#xff0c;叫【随手存盒】。 这十几天的时间里&#xff0c;随手存盒的体积从 2.7M 增加到了 3.8M。 1M 看似不值一提&#xff0c;背后几乎可以说是一个非常牛X 的脑洞。 BAT 全家桶的桶 先前大家都很讨厌微信、QQ 文件下载下来就…

微信收钱的盒子服务器老是断开,微信文件已过期或被清理的终极解决办法

工作中总是有同事习惯用微信传文件,当我们沿着微信对话爬楼找历史文件时,总会收到让人绝望的提醒:文件已过期或被清理。 这里有个抢救办法,你不妨一试! 如果文件当时是通过电脑发的,可以在““此电脑-文档-WeChat File”中找找,如果没有就真是没戏了。 如果经常遇到这样…

案例分享——恢复微信聊天记录中过期被清理的文件

近日&#xff0c;一位企业老板带着他的台式机电脑来到鸿萌数据安全中心。经了解&#xff0c;他在2020年8月时给某客户发送报价单&#xff0c;但是在微信聊天记录里面&#xff0c;该报价单因为过期被清理&#xff0c;而无法打开&#xff0c;如下图所示&#xff1a; 现对方与他因…