MvcConfig.java 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. package com.yihu.iot.config;
  2. import com.yihu.iot.interceptor.CrosXssFilter;
  3. import com.yihu.iot.interceptor.GateWayInterceptor;
  4. import org.slf4j.Logger;
  5. import org.slf4j.LoggerFactory;
  6. import org.springframework.beans.factory.annotation.Autowired;
  7. import org.springframework.boot.web.servlet.FilterRegistrationBean;
  8. import org.springframework.context.annotation.Bean;
  9. import org.springframework.context.annotation.Configuration;
  10. import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
  11. import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
  12. /**
  13. * Created by chenweida on 2017/4/6.
  14. */
  15. @Configuration
  16. public class MvcConfig extends WebMvcConfigurerAdapter {
  17. private Logger logger = LoggerFactory.getLogger(MvcConfig.class);
  18. @Autowired
  19. private GateWayInterceptor gateWayInterceptor;
  20. @Override
  21. public void addInterceptors(InterceptorRegistry registry) {
  22. // 多个拦截器组成一个拦截器链
  23. // addPathPatterns 用于添加拦截规则
  24. // excludePathPatterns 用户排除拦截 ,/third/juye/kit/**
  25. registry.addInterceptor(gateWayInterceptor).addPathPatterns("/svr-iot/open/gc/**").excludePathPatterns(
  26. "/svr-iot/open/gc/accesstoken",
  27. "/svr-iot/open/gc/createGcClientDetails");
  28. super.addInterceptors(registry);
  29. logger.info("init gateWayInterceptor");
  30. }
  31. @Bean
  32. public FilterRegistrationBean testFilterRegistration() {
  33. FilterRegistrationBean registration = new FilterRegistrationBean();
  34. registration.setFilter(new CrosXssFilter());
  35. registration.addUrlPatterns("/*");
  36. registration.setName("CrosXssFilter");
  37. registration.setOrder(1);
  38. return registration;
  39. }
  40. }