package com.xcong.excoin.configurations; import com.aliyun.oss.OSS; import com.aliyun.oss.OSSClientBuilder; import com.xcong.excoin.configurations.properties.AliOssProperties; import com.xcong.excoin.configurations.security.UserAuthenticationArgumentResolver; import com.xcong.excoin.utils.SpringContextHolder; import lombok.extern.slf4j.Slf4j; import org.springframework.boot.SpringBootConfiguration; import org.springframework.context.annotation.Bean; import org.springframework.format.FormatterRegistry; import org.springframework.http.converter.HttpMessageConverter; import org.springframework.validation.MessageCodesResolver; import org.springframework.validation.Validator; import org.springframework.web.method.support.HandlerMethodArgumentResolver; import org.springframework.web.method.support.HandlerMethodReturnValueHandler; import org.springframework.web.servlet.HandlerExceptionResolver; import org.springframework.web.servlet.config.annotation.*; import javax.annotation.Resource; import java.util.List; /** * @author wzy * @date 2020-04-27 11:54 **/ @SpringBootConfiguration @Slf4j public class WebMvcConfig implements WebMvcConfigurer { @Resource private AliOssProperties aliOssProperties; @Override public void addArgumentResolvers(List resolvers) { resolvers.add(new UserAuthenticationArgumentResolver()); } @Override public void addReturnValueHandlers(List list) { } @Override public void configureMessageConverters(List> list) { } @Override public void extendMessageConverters(List> list) { } @Override public void configureHandlerExceptionResolvers(List list) { } @Override public void extendHandlerExceptionResolvers(List list) { } @Override public Validator getValidator() { return null; } @Override public MessageCodesResolver getMessageCodesResolver() { return null; } @Override public void configurePathMatch(PathMatchConfigurer pathMatchConfigurer) { } @Override public void configureContentNegotiation(ContentNegotiationConfigurer contentNegotiationConfigurer) { } @Override public void configureAsyncSupport(AsyncSupportConfigurer asyncSupportConfigurer) { } @Override public void configureDefaultServletHandling(DefaultServletHandlerConfigurer defaultServletHandlerConfigurer) { } @Override public void addFormatters(FormatterRegistry formatterRegistry) { } @Override public void addInterceptors(InterceptorRegistry interceptorRegistry) { } @Override public void addResourceHandlers(ResourceHandlerRegistry resourceHandlerRegistry) { } /** * 设置cors跨域支持 * * @param registry */ @Override public void addCorsMappings(CorsRegistry registry) { registry.addMapping("/**") .allowedOrigins("*") .allowedMethods("GET", "HEAD", "POST", "PUT", "DELETE", "OPTIONS") .allowCredentials(true).maxAge(3600); } @Override public void addViewControllers(ViewControllerRegistry viewControllerRegistry) { } @Override public void configureViewResolvers(ViewResolverRegistry viewResolverRegistry) { } @Bean public OSS ossClient() { return new OSSClientBuilder().build(aliOssProperties.getEndPoint(), aliOssProperties.getAccessKeyId(), aliOssProperties.getAccessKeySecret()); } // @Bean // public SpringContextHolder springContextHolder() { // return new SpringContextHolder(); // } }