kaiyu
2021-05-21 66ab6b7d3ac3e7a50a8a0c1506ea5448ea8d8eee
screen-common/src/main/java/com/moral/util/TokenUtils.java
@@ -10,8 +10,11 @@
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Component;
import org.springframework.util.ObjectUtils;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
import javax.servlet.http.HttpServletRequest;
import java.util.concurrent.TimeUnit;
/**
@@ -78,7 +81,7 @@
    /**
     * @Description: 校验token
     * @Param: [type, token] type: 后台取值:manage  前台取值:api
     * @return: java.util.Map<java.lang.String                               ,                               java.lang.Object>
     * @return: java.util.Map<java.lang.String                                                                                                                               ,                                                                                                                               java.lang.Object>
     * @Author: 陈凯裕
     * @Date: 2021/3/10
     */
@@ -105,7 +108,7 @@
    /**
     * @Description: 通过token获取用户信息
     * @Param: [token]
     * @return: java.util.Map<java.lang.String                               ,                               java.lang.Object>
     * @return: java.util.Map<java.lang.String                                                                                                                               ,                                                                                                                               java.lang.Object>
     * @Author: 陈凯裕
     * @Date: 2021/3/11
     */
@@ -129,6 +132,7 @@
        redisTemplate.opsForHash().delete("user_token", uid);
    }
    /**
     * @Description: 销毁token
     * @Param: [token]
@@ -141,6 +145,34 @@
    }
    /**
     * @Description: 销毁当前连接的token
     * @Param: []
     * @return: void
     * @Author: 陈凯裕
     * @Date: 2021/5/21
     */
    public static void destoryToken() {
        destoryToken(getCurrentToken());
    }
    public static void destoryToken(Integer id) {
        String token = getTokenById(id);
        destoryToken(token,String.valueOf(id));
    }
    /**
     * @Description: 根据id获取token
     * @Param: []
     * @return: java.lang.String
     * @Author: 陈凯裕
     * @Date: 2021/5/21
     */
    public static String getTokenById(Integer id) {
         return (String)redisTemplate.opsForHash().get("user_token", String.valueOf(id));
    }
    /**
     * @Description: 根据TOKEN获取Id
     * @Param: [token]
     * @return: void
@@ -152,6 +184,18 @@
        return string[0];
    }
    /**
     * @Description: 获取当前请求的token
     * @Param: []
     * @return: java.lang.String
     * @Author: 陈凯裕
     * @Date: 2021/5/21
     */
    public static String getCurrentToken() {
        HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
        return request.getHeader("token");
    }
    /**
     * @Description: token延长