诺依框架设置登入有效期
时间: 2024-01-23 15:15:52 浏览: 257
基于诺依开源框架的心悦游戏后台管理系统Java设计源码
诺依框架(RuoYi)可以通过以下步骤来设置登录有效期:
1. 在登录时设置登录时间和过期时间:
```java
long expireTime = System.currentTimeMillis() + 过期时间(单位:毫秒);
LoginUser loginUser = new LoginUser();
loginUser.setExpireTime(expireTime);
// 将登录用户对象存入缓存(例如Redis),并设置过期时间
redisTemplate.opsForValue().set("登录用户的唯一标识", loginUser, 过期时间, TimeUnit.MILLISECONDS);
```
2. 在验证令牌有效期时,判断当前时间与过期时间的差值是否小于等于指定的刷新时间(例如20分钟):
```java
public void verifyToken(LoginUser loginUser) {
long expireTime = loginUser.getExpireTime();
long currentTime = System.currentTimeMillis();
if (expireTime - currentTime <= 刷新时间(单位:毫秒)) {
refreshToken(loginUser);
}
}
```
3. 在刷新令牌时,重新设置过期时间并更新缓存中的登录用户对象:
```java
public void refreshToken(LoginUser loginUser) {
long expireTime = System.currentTimeMillis() + 新的过期时间(单位:毫秒);
loginUser.setExpireTime(expireTime);
// 更新缓存中的登录用户对象的过期时间
redisTemplate.expire("登录用户的唯一标识", 新的过期时间, TimeUnit.MILLISECONDS);
}
```
这样,当登录用户的令牌即将过期时,会自动刷新缓存中的登录用户对象的过期时间,保证登录有效期延长。
阅读全文