mitao
2025-03-14 392b42c4891cf2e6beda57ab32c51598f290f4b7
ruoyi-common/ruoyi-common-security/src/main/java/com/ruoyi/common/security/utils/SecurityUtils.java
@@ -1,13 +1,14 @@
package com.ruoyi.common.security.utils;
import javax.servlet.http.HttpServletRequest;
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
import com.ruoyi.common.core.constant.SecurityConstants;
import com.ruoyi.common.core.constant.TokenConstants;
import com.ruoyi.common.core.context.SecurityContextHolder;
import com.ruoyi.common.core.exception.auth.NotLoginException;
import com.ruoyi.common.core.utils.ServletUtils;
import com.ruoyi.common.core.utils.StringUtils;
import com.ruoyi.system.api.model.LoginUser;
import javax.servlet.http.HttpServletRequest;
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
/**
 * 权限获取工具类
@@ -63,10 +64,29 @@
    {
        // 从header获取token标识
        String token = request.getHeader(TokenConstants.AUTHENTICATION);
        if (StringUtils.isBlank(token)) {
            // 如果Authorization为空,那么尝试读取Sec-Websocket-Protocol的内容
            token = request.getHeader("Sec-Websocket-Protocol");
        }
        return replaceTokenPrefix(token);
    }
    /**
     * 判断用户是否登录
     */
    public static boolean isLogin()
    {
        String token = SecurityUtils.getToken();
        if (token == null)
        {
            return false;
        }
        LoginUser loginUser = SecurityUtils.getLoginUser();
        return loginUser != null;
    }
    /**
     * 裁剪token前缀
     */
    public static String replaceTokenPrefix(String token)