ResourcesConfig實現配置資源路徑



import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.cors.CorsConfiguration;
import org.springframework.web.cors.UrlBasedCorsConfigurationSource;
import org.springframework.web.filter.CorsFilter;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport;

/**
 * 通用配置
 *
 * @author ruoyi
 */
@Configuration
public class ResourcesConfig extends WebMvcConfigurationSupport {
//    @Autowired
//    private RepeatSubmitInterceptor repeatSubmitInterceptor;

    /**
     * 是否開啟swagger
     */
    @Value("${swagger.enabled}")
    private boolean swaggerEnable;

    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
//        /** 本地文件上傳路徑 */
//        registry.addResourceHandler(Constants.RESOURCE_PREFIX + "/**").addResourceLocations("file:" + RuoYiConfig.getProfile() + "/");

        // 判斷是否啟用swagger文檔界面,啟用則會開放這些資源,讓開發者能夠訪問到
        if (swaggerEnable) {
            registry.addResourceHandler("/swagger-ui.html")
                    .addResourceLocations("classpath:/META-INF/resources/");
            registry.addResourceHandler("/webjars/**")
                    .addResourceLocations("classpath:/META-INF/resources/webjars/");
        }
        super.addResourceHandlers(registry);
    }

//    /**
//     * 自定義攔截規則
//     */
//    @Override
//    public void addInterceptors(InterceptorRegistry registry)
//    {
//        registry.addInterceptor(repeatSubmitInterceptor).addPathPatterns("/**");
//    }

    /**
     * 跨域配置
     */
    @Bean
    public CorsFilter corsFilter() {
        UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
        CorsConfiguration config = new CorsConfiguration();
        config.setAllowCredentials(true);
        // 設置訪問源地址
        config.addAllowedOrigin("*");
        // 設置訪問源請求頭
        config.addAllowedHeader("*");
        // 設置訪問源請求方法
        config.addAllowedMethod("*");
        // 對接口配置跨域設置
        source.registerCorsConfiguration("/**", config);
        return new CorsFilter(source);
    }
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM