mirror of
https://github.com/didi/KnowStreaming.git
synced 2026-01-07 06:02:07 +08:00
SpringTool.getUserName()方法中获取requestAttributes可能为null, 增加为null判断
This commit is contained in:
@@ -13,6 +13,7 @@ import org.springframework.context.ApplicationEvent;
|
|||||||
import org.springframework.context.annotation.Lazy;
|
import org.springframework.context.annotation.Lazy;
|
||||||
import org.springframework.core.annotation.Order;
|
import org.springframework.core.annotation.Order;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
import org.springframework.web.context.request.RequestAttributes;
|
||||||
import org.springframework.web.context.request.RequestContextHolder;
|
import org.springframework.web.context.request.RequestContextHolder;
|
||||||
import org.springframework.web.context.request.ServletRequestAttributes;
|
import org.springframework.web.context.request.ServletRequestAttributes;
|
||||||
|
|
||||||
@@ -81,16 +82,19 @@ public class SpringTool implements ApplicationContextAware, DisposableBean {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static String getUserName(){
|
public static String getUserName(){
|
||||||
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
|
|
||||||
|
|
||||||
String username = null;
|
String username = null;
|
||||||
if (TrickLoginConstant.TRICK_LOGIN_SWITCH_ON.equals(request.getHeader(TrickLoginConstant.TRICK_LOGIN_SWITCH))) {
|
RequestAttributes requestAttributes = RequestContextHolder.getRequestAttributes();
|
||||||
// trick登录方式的获取用户
|
if (!ValidateUtils.isNull(requestAttributes)) {
|
||||||
username = request.getHeader(TrickLoginConstant.TRICK_LOGIN_USER);
|
HttpServletRequest request = ((ServletRequestAttributes) requestAttributes).getRequest();
|
||||||
} else {
|
|
||||||
// 走页面登录方式登录的获取用户
|
if (TrickLoginConstant.TRICK_LOGIN_SWITCH_ON.equals(request.getHeader(TrickLoginConstant.TRICK_LOGIN_SWITCH))) {
|
||||||
HttpSession session = request.getSession();
|
// trick登录方式的获取用户
|
||||||
username = (String) session.getAttribute(LoginConstant.SESSION_USERNAME_KEY);
|
username = request.getHeader(TrickLoginConstant.TRICK_LOGIN_USER);
|
||||||
|
} else {
|
||||||
|
// 走页面登录方式登录的获取用户
|
||||||
|
HttpSession session = request.getSession();
|
||||||
|
username = (String) session.getAttribute(LoginConstant.SESSION_USERNAME_KEY);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (ValidateUtils.isNull(username)) {
|
if (ValidateUtils.isNull(username)) {
|
||||||
|
|||||||
Reference in New Issue
Block a user