Merge remote-tracking branch 'origin/dev-ltx' into dev/3.1_release_merge
This commit is contained in:
@@ -34,6 +34,11 @@ public class RedisUtil {
|
||||
private RedisTemplate<String, String> redisTemplate;
|
||||
|
||||
public final static String FLUX_POLLING_URL = "Flux:";
|
||||
/**
|
||||
* 登录 token 在 Redis 中的前缀:
|
||||
* 最终 key 结构为 login:token:{userId}
|
||||
*/
|
||||
public final static String LOGIN_TOKEN_KEY = "login:token:";
|
||||
|
||||
public Boolean hasKey(String key){
|
||||
return redisTemplate.hasKey(key);
|
||||
@@ -186,6 +191,40 @@ public class RedisUtil {
|
||||
redisTemplate.delete(key);
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存登录 token
|
||||
*
|
||||
* @param userId 用户 ID
|
||||
* @param token token 字符串
|
||||
* @param expireMillis 过期时间(毫秒,通常与 JWT 保持一致)
|
||||
*/
|
||||
public void setLoginToken(Long userId, String token, long expireMillis) {
|
||||
if (expireMillis <= 0) {
|
||||
// 不设置过期时间,直到手动删除(不推荐)
|
||||
addToString(LOGIN_TOKEN_KEY + userId, token);
|
||||
return;
|
||||
}
|
||||
long expireSeconds = expireMillis / 1000;
|
||||
if (expireSeconds <= 0) {
|
||||
expireSeconds = 1;
|
||||
}
|
||||
addToString(LOGIN_TOKEN_KEY + userId, token, expireSeconds);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取登录 token
|
||||
*/
|
||||
public String getLoginToken(Long userId) {
|
||||
return getFromString(LOGIN_TOKEN_KEY + userId);
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除登录 token
|
||||
*/
|
||||
public void deleteLoginToken(Long userId) {
|
||||
removeFromString(LOGIN_TOKEN_KEY + userId);
|
||||
}
|
||||
|
||||
public final static String PORTFOLIO_LIKE_KEY = "portfolio:like:";
|
||||
|
||||
public void likePost(Long portfolioId, Long userId) {
|
||||
|
||||
Reference in New Issue
Block a user