温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

微信小程序缓存过期时间如何设置

发布时间:2022-07-02 09:37:15 来源:亿速云 阅读:1254 作者:iii 栏目:开发技术

本文小编为大家详细介绍“微信小程序缓存过期时间如何设置”,内容详细,步骤清晰,细节处理妥当,希望这篇“微信小程序缓存过期时间如何设置”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。

微信小程序缓存机制介绍

每个微信小程序都可以有自己的本地缓存,可以通过 wx.setStorage(wx.setStorageSync)wx.getStorage(wx.getStorageSync)wx.clearStorage(wx.clearStorageSync)可以对本地缓存进行设置、获取和清理。

但是微信默认设置了缓存是无限长的过期时限,这对于我们的小程序开发,是非常不好的。

哪些是一定需要过期的缓存

我正在开发的项目中,用户通过第三方登录拿到一个token,每次请求都必须带上token,但是token的时限是30分钟。

所以token就属于有必要当成缓存,但是又必须设置缓存时限的数据。

写法

在用户登录成功后,把过期时间、token一起存入缓存:

// 设置token缓存
wx.setStorageSync('token', res.data.token);
// 当前时间
var timestamp = Date.parse(new Date());
// 加上过期期限
var expiration = timestamp + 1200000; //缓存20分钟
// 存入缓存
wx.setStorageSync('data_expiration', expiration);

app.js入口文件里,监测是否超时:

// 缓存是否过期
  _isExpiration() {
  	// 当前时间
    var timestamp = Date.parse(new Date());
    // 缓存中的过期时间
    var data_expiration = wx.getStorageSync("data_expiration");
    // 如果缓存中没有data_expiration,说明也没有token,还未登录
    if (data_expiration) {
      // 如果超时了,清除缓存,重新登录
      if (timestamp > data_expiration) {
        wx.clearStorageSync();
        return true;
      }else{
        return false;
      }
    }
    return true;
  },

读到这里,这篇“微信小程序缓存过期时间如何设置”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI