You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

74 lines
3.0 KiB

3 years ago
package com.qs.serve.common.config;
2 years ago
import com.qs.serve.common.config.properties.ProjectProperties;
3 years ago
import com.qs.serve.common.framework.interceptor.LimitSubmitInterceptor;
import lombok.AllArgsConstructor;
2 years ago
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value;
3 years ago
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.multipart.MultipartResolver;
import org.springframework.web.multipart.commons.CommonsMultipartResolver;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
2 years ago
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
3 years ago
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
/**
* @author YenHex
* @since 2022/2/24
*/
2 years ago
@Slf4j
3 years ago
@AllArgsConstructor
@Configuration(proxyBeanMethods = false)
public class SpringMvcConfig implements WebMvcConfigurer {
private final LimitSubmitInterceptor limitSubmitInterceptor;
//private final ApiAuthInterceptor apiAuthInterceptor;
3 years ago
2 years ago
private final ProjectProperties projectProperties;
3 years ago
@Override
public void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(limitSubmitInterceptor)
.addPathPatterns("/**");
}
2 years ago
@Override
3 years ago
public void addResourceHandlers(ResourceHandlerRegistry registry) {
2 years ago
log.warn("PcWebLocal==>{}",projectProperties.getPcWebLocal());
registry.addResourceHandler("/web/**")
.addResourceLocations("file:"+projectProperties.getPcWebLocal());
3 years ago
registry.addResourceHandler("/static/**")
2 years ago
.addResourceLocations("file:"+projectProperties.getPcWebLocal()+"static/");
}
3 years ago
@Bean
public CorsFilter corsFilter() {
final UrlBasedCorsConfigurationSource urlBasedCorsConfigurationSource = new UrlBasedCorsConfigurationSource();
final CorsConfiguration corsConfiguration = new CorsConfiguration();
/*是否允许请求带有验证信息*/
corsConfiguration.setAllowCredentials(true);
/*允许访问的客户端域名*/
corsConfiguration.addAllowedOrigin("*");
/*允许服务端访问的客户端请求头*/
corsConfiguration.addAllowedHeader("*");
/*允许访问的方法名,GET POST等*/
corsConfiguration.addAllowedMethod("*");
urlBasedCorsConfigurationSource.registerCorsConfiguration("/**", corsConfiguration);
return new CorsFilter(urlBasedCorsConfigurationSource);
}
//@Bean
public MultipartResolver multipartResolver(){
CommonsMultipartResolver resolver = new CommonsMultipartResolver();
resolver.setMaxInMemorySize(5120);
resolver.setMaxInMemorySize(300 * 1024 * 1024);
resolver.setDefaultEncoding("UTF-8");
return resolver;
}
}