40 lines
1.3 KiB
Java
40 lines
1.3 KiB
Java
package com.yupi.springbootinit.config;
|
|
|
|
import cn.dev33.satoken.interceptor.SaInterceptor;
|
|
import cn.dev33.satoken.stp.StpUtil;
|
|
import com.yupi.springbootinit.common.ErrorCode;
|
|
import com.yupi.springbootinit.exception.BusinessException;
|
|
import org.springframework.context.annotation.Configuration;
|
|
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
|
|
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
|
|
|
|
@Configuration
|
|
public class SaTokenConfigure implements WebMvcConfigurer {
|
|
@Override
|
|
public void addInterceptors(InterceptorRegistry registry) {
|
|
// 注册Sa-Token的拦截器
|
|
registry.addInterceptor(new SaInterceptor(handle -> StpUtil.checkLogin()))
|
|
.addPathPatterns("/**")
|
|
.excludePathPatterns(getExcludePaths());
|
|
}
|
|
|
|
/**
|
|
* 获取需要放行的路径
|
|
*/
|
|
private String[] getExcludePaths() {
|
|
return new String[]{
|
|
// Swagger & Knife4j 相关
|
|
"/doc.html",
|
|
"/webjars/**",
|
|
"/swagger-resources/**",
|
|
"/v2/api-docs",
|
|
"/v3/api-docs",
|
|
"/v3/api-docs/**",
|
|
"/swagger-ui.html",
|
|
"/swagger-ui/**",
|
|
"/favicon.ico",
|
|
// 你的其他放行路径,例如登录接口
|
|
"/user/doLogin"
|
|
};
|
|
}
|
|
} |