修该死的bug
This commit is contained in:
@@ -236,7 +236,7 @@ public class ChatServiceImpl implements ChatService {
|
|||||||
vo.setSessionName("用户" + session.getTargetUserId());
|
vo.setSessionName("用户" + session.getTargetUserId());
|
||||||
vo.setAvatarUrl(null);
|
vo.setAvatarUrl(null);
|
||||||
}
|
}
|
||||||
vo.setOnline(userService.isUserOnline(currentUserId));
|
vo.setOnline(userService.isUserOnline(vo.getTargetUserId()));
|
||||||
return vo;
|
return vo;
|
||||||
}).collect(Collectors.toList());
|
}).collect(Collectors.toList());
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -124,6 +124,9 @@ public class UserServiceImpl implements UserService {
|
|||||||
@Override
|
@Override
|
||||||
public void logout(String token) {
|
public void logout(String token) {
|
||||||
Claims claims = JwtUtil.getClaimsFromToken(token);
|
Claims claims = JwtUtil.getClaimsFromToken(token);
|
||||||
|
// 获取token信息
|
||||||
|
String subject = claims.getSubject();
|
||||||
|
// 获取token的过期时间
|
||||||
Date expiration = claims.getExpiration();
|
Date expiration = claims.getExpiration();
|
||||||
// 判断 token 是否已过期
|
// 判断 token 是否已过期
|
||||||
long ttl = expiration.getTime() - System.currentTimeMillis();
|
long ttl = expiration.getTime() - System.currentTimeMillis();
|
||||||
@@ -132,6 +135,10 @@ public class UserServiceImpl implements UserService {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 从Redis中删除登录token记录
|
||||||
|
String loginTokenKey = "login:token:" + subject;
|
||||||
|
redisTemplate.delete(loginTokenKey);
|
||||||
|
|
||||||
String logoutKey = "jwt:blacklist:" + token;
|
String logoutKey = "jwt:blacklist:" + token;
|
||||||
redisTemplate.opsForValue().set(
|
redisTemplate.opsForValue().set(
|
||||||
logoutKey,
|
logoutKey,
|
||||||
|
|||||||
Reference in New Issue
Block a user