若依vue设置永久不过期

分离版本不建议这么做。用户权限应该定期过期,不然有安全风险问题。
如果要永久的话自己去调整下就好了。
TokenService.java

/**
 * 刷新令牌有效期
 *
 * @param loginUser 登录信息
 */
public void refreshToken(LoginUser loginUser)
{
	....
	// redisCache.setCacheObject(userKey, loginUser, expireTime, TimeUnit.MINUTES);
	// 改成 不设置时间
	redisCache.setCacheObject(userKey, loginUser);
}

 摘自(token设置永久无法设置永久有效 · Issue #I3BPFK · 若依/RuoYi-Vue - Gitee.com

### 回答1: Vue 中可以使用 JavaScript 原生的 localStorage 来实现本地存储,设置保存时间可以在存储时附带一个过期时间戳,在读取时检查是否过期即可。 示例代码如下: ``` // 设置保存时间为一小时 let expires = Date.now() + 1000 * 60 * 60; localStorage.setItem('key', JSON.stringify({data: 'value', expires})); // 读取并检查是否过期 let item = JSON.parse(localStorage.getItem('key')); if (item.expires < Date.now()) { localStorage.removeItem('key'); } else { console.log(item.data); } ``` 注意:localStorage的存储空间有限,大概为5-10M左右,如果空间满了会报错,请注意清除过期数据。 ### 回答2: 在Vue中,可以使用localStorage来在浏览器中存储数据。localStorage是一种Web存储API,用于在浏览器中长期保存数据。与sessionStorage相比,localStorage的数据会在会话关闭后自动删除,因此可以在浏览器关闭后仍然保留数据。 要设置数据在localStorage中的保存时间,需要借助于JavaScript的Date对象和计时器功能。以下是实现该功能的一种方法: 1. 首先,使用Vue的created()生命周期钩子函数来检查数据是否已过期。在created()中,可以获取存储在localStorage中的数据并检查数据的保存时间是否已经超过了指定的时间。 2. 在created()中,获取数据时,将存储的时间戳与当前时间戳相比较。如果数据已过期,则移除该数据并执行相应的逻辑。 3. 如果数据未过期,则继续使用该数据。 4. 若要设置数据的保存时间,可以在存储数据时同时存储一个时间戳,表示存储的时间点。存储时间戳可以使用JavaScript的Date对象来获取,例如 Date.now()。 5. 在页面加载时,通过created()来检查每个存储的数据的时间戳。根据时间戳判断数据是否已过期,并在必要时移除。 需要注意的是,由于JavaScript的Date对象表示时间戳的单位是毫秒,因此需要将设置的保存时间转换为毫秒来进行比较。例如,保存时间为一个小时,可以将其转换为毫秒:60 * 60 * 1000。 通过以上方法,可以在Vue中实现对localStorage数据保存时效的控制。 ### 回答3: 在Vue中,我们可以使用LocalStorage来保存数据,并且LocalStorage的默认保存时间为永久性存储。这意味着即使用户关闭浏览器或者重启电脑,保存在LocalStorage中的数据仍然会保留。 然而,有时候我们可能需要在特定的时间段内保存数据,而永久性保存。这可以通过设置过期时间来实现。我们可以在保存数据时,在LocalStorage的key值前加入一个过期前缀,并设置一个过期时间。然后在获取数据时,我们可以判断当前时间是否超过了这个过期时间,如果超过了就将该数据删除。 以下是一个示例代码,演示了如何设置LocalStorage的过期时间: ``` // 设置过期时间为1小时 const expiration = 60 * 60 * 1000; // 1小时 const key = 'myData'; const expirationKey = 'expiration'; // 保存数据时设置过期时间 localStorage.setItem(key, JSON.stringify({ data: 'my data' })); localStorage.setItem(expirationKey, String(Date.now() + expiration)); // 获取数据时检查过期时间 if (localStorage.getItem(expirationKey) < Date.now()) { // 数据已过期,删除数据 localStorage.removeItem(key); localStorage.removeItem(expirationKey); } else { // 数据未过期,获取数据 const data = localStorage.getItem(key); console.log(JSON.parse(data)); } ``` 通过这种方式,我们可以在LocalStorage中保存数据,并且设定一个过期时间,以便在指定的时间段内保存数据。当数据过期后,我们可以在获取数据时进行相应的处理,例如删除过期数据或者重新获取最新数据。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值