不断检查 Cookie 过期的最佳做法?



我正在使用带有 Node.js 后端的 Vue 来开发具有登录功能的 Web 应用程序。 假设我有一个登录 cookie,我想做点什么:

  • 过期前 30 秒
  • 过期后

我也可能遇到这样的情况:除非我更改 cookie,否则我无法保证 cookie 的过期时间保持不变。 即我认为我不应该在收到 cookie 后立即设置回调以触发(过期 - 现在(秒。

我知道 Vue 的 nextTick 函数。在该回调中检查 cookie 的过期是否合适?我不确定是否存在其他基于时间敏感数据执行HTML更新的更智能方法。

Using cookies.onChanged:

browser.cookies.onChanged.addListener(({removed, cookie, cause}) => {
if (removed && cause === "expired") {
// Cookie expired
console.log(cookie, "has expired")
setTimeout(() => {
// 30 seconds after cookie expired
console.log(cookie, "was removed 30 seconds ago.")
}, 30000)
}
})

我现在正在开发一个类似的应用程序,使用 vuejs 和 node.js 快速后端。 我使用 JWT 令牌,用于存储到期日期。如果用户发出请求,前端会检查令牌是否已过期。如果已过期,请从后端请求新令牌。为此,我不仅存储令牌,还存储刷新令牌。因此,如果到期日期到期,客户端会请求一个新令牌,并在之后使用该令牌发出请求。

最新更新