WebMvcConfig.java 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. package com.jpsoft.smart.config;
  2. import com.jpsoft.smart.interceptor.LoginInterceptor;
  3. import org.springframework.beans.factory.annotation.Autowired;
  4. import org.springframework.context.annotation.Configuration;
  5. import org.springframework.web.servlet.config.annotation.*;
  6. @Configuration
  7. public class WebMvcConfig implements WebMvcConfigurer {
  8. @Autowired
  9. private LoginInterceptor loginInterceptor;
  10. @Override
  11. public void addCorsMappings(CorsRegistry registry) {
  12. registry.addMapping("/**")
  13. .allowedOrigins("*")
  14. .allowedHeaders("*")
  15. .allowedMethods("*")
  16. .allowCredentials(false)
  17. .exposedHeaders("access-control-allow-headers",
  18. "access-control-allow-methods",
  19. "access-control-allow-origin",
  20. "access-control-max-age",
  21. "X-Frame-Options",
  22. "token-status")
  23. .maxAge(3600);
  24. }
  25. @Override
  26. public void addResourceHandlers(ResourceHandlerRegistry registry) {
  27. registry.addResourceHandler("swagger-ui.html")
  28. .addResourceLocations("classpath:/META-INF/resources/");
  29. registry.addResourceHandler("/webjars/**")
  30. .addResourceLocations("classpath:/META-INF/resources/webjars/");
  31. }
  32. @Override
  33. public void addViewControllers(ViewControllerRegistry registry) {
  34. // registry.addViewController("/login").setViewName("login");
  35. }
  36. @Override
  37. public void addInterceptors(InterceptorRegistry registry) {
  38. registry.addInterceptor(loginInterceptor)
  39. .addPathPatterns("/**")
  40. .excludePathPatterns("/login",
  41. "/swagger-resources/**",
  42. "/webjars/**",
  43. "/swagger-ui.html",
  44. "/v2/**",
  45. "/mobileApi/**")
  46. .excludePathPatterns("/wxPay/webPay")
  47. .excludePathPatterns("/aliPay/tradePrecreatePay")
  48. .excludePathPatterns("/aliPay/payNotify")
  49. .excludePathPatterns("/wxPay/payNotify")
  50. .excludePathPatterns("/base/alarmInfo/alarmNotify")
  51. .excludePathPatterns("/base/informationInfo/addMobile")
  52. .excludePathPatterns("/base/employeeInfo/mobile/**")
  53. .excludePathPatterns("/base/companyInfo/list")
  54. .excludePathPatterns("/wechat/**");
  55. }
  56. }