增加从requestUtil中获取登录名的方法,by accessToken

This commit is contained in:
2025-08-05 20:46:54 +08:00
parent 75cb5163f1
commit 1f41ef2d01
3 changed files with 28 additions and 11 deletions

View File

@@ -90,6 +90,32 @@ public class RequestUtil {
return userId;
}
/**
* 获取当前登录用户的ID
*
* @return 若成功返回当前登录用户的ID若失败返回null
*/
public static String getLoginNameByToken() {
String accessToken = getAccessToken();
String loginName = null;
if (StrUtil.isNotBlank(accessToken)) {
Map<String, Object> map = JwtUtil.parseToken(accessToken);
loginName = (String) map.get(SecurityConstants.LOGIN_NAME);
}
return StrUtil.isBlank(loginName) ? LogInfo.UNKNOWN_USER : loginName;
}
/**
* 获取用户登录名称
* 该方法通常用于未登录阶段无token信息
*/
public static String getLoginName() {
HttpServletRequest request = HttpServletUtil.getRequest();;
String loginName = (String) request.getAttribute(SecurityConstants.AUTHENTICATE_USERNAME);
return StrUtil.isBlank(loginName) ? LogInfo.UNKNOWN_USER : loginName;
}
/**
* 获取当前登录用户的用户名
*
@@ -106,15 +132,6 @@ public class RequestUtil {
}
/**
* 获取用户登录名称
* 该方法通常用于未登录阶段无token信息
*/
public static String getLoginName() {
HttpServletRequest request = HttpServletUtil.getRequest();;
String loginName = (String) request.getAttribute(SecurityConstants.AUTHENTICATE_USERNAME);
return StrUtil.isBlank(loginName) ? LogInfo.UNKNOWN_USER : loginName;
}
/**
* 获取请求体