Files
sa-token/sa-token-demo-springboot/src/main/java/com/pj/satoken/MySaTokenConfig.java

40 lines
1.6 KiB
Java
Raw Normal View History

2020-03-07 14:40:15 +08:00
package com.pj.satoken;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
2020-06-15 22:03:41 +08:00
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
2020-03-07 14:40:15 +08:00
2020-09-07 02:21:35 +08:00
import cn.dev33.satoken.config.SaTokenConfig;
2020-12-22 01:11:28 +08:00
import cn.dev33.satoken.interceptor.SaCheckInterceptor;
2020-03-07 14:40:15 +08:00
/**
* sa-token代码方式进行配置
*/
@Configuration
2020-06-15 22:03:41 +08:00
public class MySaTokenConfig implements WebMvcConfigurer {
2020-03-07 14:40:15 +08:00
// 获取配置Bean (以代码的方式配置sa-token, 此配置会覆盖yml中的配置 )
// @Primary
// @Bean(name="MySaTokenConfig")
2020-09-07 02:21:35 +08:00
public SaTokenConfig getSaTokenConfig() {
SaTokenConfig config = new SaTokenConfig();
config.setTokenName("satoken"); // token名称 (同时也是cookie名称)
config.setTimeout(30 * 24 * 60 * 60); // token有效期单位s 默认30天
config.setIsShare(true); // 在多人登录同一账号时,是否共享会话 (为true时共用一个为false时新登录挤掉旧登录)
config.setIsReadBody(true); // 是否尝试从请求体里读取token
config.setIsReadHead(true); // 是否尝试从header里读取token
config.setIsReadCookie(true); // 是否尝试从cookie里读取token
config.setTokenStyle("uuid"); // token风格
2020-09-07 02:21:35 +08:00
config.setIsV(true); // 是否在初始化配置时打印版本字符画
return config;
}
2020-03-07 14:40:15 +08:00
// 注册sa-token的拦截器打开注解式鉴权功能
@Override
public void addInterceptors(InterceptorRegistry registry) {
2020-05-02 15:19:55 +08:00
registry.addInterceptor(new SaCheckInterceptor()).addPathPatterns("/**"); // 全局拦截器
2020-03-07 14:40:15 +08:00
}
2020-05-02 15:19:55 +08:00
2020-03-07 14:40:15 +08:00
}