1、声明Servlet:
由于项目使用集成第三方登录认证,需要使用到servlet,则需要在springboot集成环境添加servlet,只需要在Application.java启动类中声明并注入Servlet即可,实现方式如下:
@Bean
public ServletRegistrationBean setCookieServlet() {
return new ServletRegistrationBean(new SetCookieServlet(), "/setcookie");
}
@Bean
public ServletRegistrationBean cleanCookieServlet() {
return new ServletRegistrationBean(new CleanCookieServlet(), "/cleancookie");
}
2、添加Filter:在Application.java启动类中添加以下代码
@Bean
public FilterRegistrationBean filterRegistration() {
FilterRegistrationBean registration = new FilterRegistrationBean();
registration.setFilter(new AuthFilter());
registration.addUrlPatterns("/*");
registration.setName("AuthFilter");
return registration;
}
3、声明添加拦截器:
@Configuration
public class WebMvcConfig extends WebMvcConfigurerAdapter {
@Autowired
private AuthInterceptor authInterceptor;
@Override
public void addInterceptors(InterceptorRegistry registry) {
authInterceptor.setWhiteLists(Lists.newArrayList("/static/**","/error"));
registry.addInterceptor(authInterceptor).addPathPatterns("/**").addPathPatterns("/**");//要拦截的请求
}
}