微信小程序緩存過期時間的相關設置(推薦)

微信小程序緩存機制介紹

每個微信小程序都可以有自己的本地緩存,可以通過 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;
  },

到此這篇關於微信小程序緩存過期時間的相關設置的文章就介紹到這瞭,更多相關微信小程序緩存過期時間內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: