WebMvcConfig.java 1.8 KB
Newer Older
1 2
package com.laker.admin.config;

lakernote's avatar
lakernote 已提交
3
import cn.dev33.satoken.interceptor.SaAnnotationInterceptor;
lakernote's avatar
lakernote 已提交
4
import lombok.extern.slf4j.Slf4j;
5
import org.springframework.context.annotation.Configuration;
6
import org.springframework.web.servlet.config.annotation.CorsRegistry;
7 8 9 10
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

lakernote's avatar
lakernote 已提交
11 12
import java.io.File;

13
@Configuration
lakernote's avatar
lakernote 已提交
14
@Slf4j
15
public class WebMvcConfig implements WebMvcConfigurer {
16 17 18 19 20 21 22 23
    @Override
    public void addCorsMappings(CorsRegistry registry) {
        registry.addMapping("/**")
                .allowedOrigins("*")
                .allowCredentials(true)
                .allowedMethods("*")
                .maxAge(3600);
    }
24 25 26 27 28 29

    /**
     * 注册sa-token的拦截器,打开注解式鉴权功能 (如果您不需要此功能,可以删除此类)
     */
    @Override
    public void addInterceptors(InterceptorRegistry registry) {
lakernote's avatar
lakernote 已提交
30 31
        // 注册注解拦截器,并排除不需要注解鉴权的接口地址 (与登录拦截器无关)
        registry.addInterceptor(new SaAnnotationInterceptor()).addPathPatterns("/**")
32 33 34
                .excludePathPatterns("/admin/**",
                        "/admin/login.html",
                        "/error",
35
                        "/swagger-resources/**",
36
                        "/api/v1/login",
lakernote's avatar
lakernote 已提交
37 38
                        "/captcha",
                        "/thumbnail");
39 40 41 42
    }

    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
lakernote's avatar
lakernote 已提交
43 44 45
        File file = new File("web");
        log.info(file.getAbsolutePath());
        registry.addResourceHandler("/admin/**")
lakernote's avatar
lakernote 已提交
46
                .addResourceLocations("file:" + file.getAbsolutePath() + "/admin/");
47 48 49
    }

}