Commit 8f2e61a9 by “zcwang”

add: 登录态校验

parent ccbd3cff
Pipeline #43485 passed with stages
in 2 minutes 33 seconds
/**
* @(#)UserHolder.java, 2020/12/9.
* <p/>
* Copyright 2020 Netease, Inc. All rights reserved.
* NETEASE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
*/
package com.netease.mail.yanxuan.change.common.bean;
import org.springframework.stereotype.Component;
/**
* B端管理系统用户信息
*
* @author: 莫闲
* @date: 2020-12-09 13:19
**/
@Component
public class AdminUserHolder {
// 当前登录用户名线程绑定
private static ThreadLocal<String> userThreadLocal = new ThreadLocal<>();
public static void clear() {
userThreadLocal.remove();
}
/**
* 获取用户名
*
* @return 用户名,null-未登录
*/
public static String getUserName() {
return userThreadLocal.get();
}
public static void setUserName(String userName) {
userThreadLocal.set(userName);
}
}
package com.netease.mail.yanxuan.change.web.config;
import java.util.Enumeration;
import java.util.HashMap;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.stereotype.Component;
import org.springframework.web.servlet.HandlerInterceptor;
import org.springframework.web.servlet.ModelAndView;
import com.netease.mail.yanxuan.change.common.bean.AdminUserHolder;
import lombok.extern.slf4j.Slf4j;
@Slf4j
@Component
public class AdminUserLoginInterceptor implements HandlerInterceptor {
@Override
public boolean preHandle(HttpServletRequest request,
HttpServletResponse response, Object handler) throws Exception {
Map<String, String> headerMap = new HashMap<>();
Enumeration<String> enumeration = request.getHeaderNames();
while (enumeration.hasMoreElements()) {
String name = enumeration.nextElement();
String value = request.getHeader(name);
headerMap.put(name, value);
}
log.info("adminUserLoginInterceptor headerMap ={}", headerMap);
String uid = request.getHeader("uid");
log.info("adminUserLoginInterceptor uid ={}", uid);
AdminUserHolder.setUserName(uid);
return true;
}
@Override
public void postHandle(HttpServletRequest request,
HttpServletResponse response, Object handler, ModelAndView modelAndView)
throws Exception {
}
@Override
public void afterCompletion(HttpServletRequest request,
HttpServletResponse response, Object handler, Exception ex)
throws Exception {
AdminUserHolder.clear();
}
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment