實現這種功能方法有不少,先後端均可以實現。本文將從後端(java)實現此功能。大概思路以下:java
攔截器注入service爲空,可進行攔截器配置:spring
//spring boot 攔截器配置
@Configuration
public class ServletContextConfig extends WebMvcConfigurerAdapter {
@Override
public void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(loginInterceptor())
.excludePathPatterns("/error", "/test/error") // 排除攔截
.addPathPatterns("/**"); //對全路徑請求進行攔截
super.addInterceptors(registry);
}
// 處理業務的類
@Bean
public LoginInterceptor loginInterceptor(){
return new LoginInterceptor();
}
}
public class LoginInterceptor implements HandlerInterceptor {
private static final Logger logger = LoggerFactory.getLogger(LoginInterceptor.class);
@Autowired
private XXXService xxxService;// 此時Service會注入成功
public boolean preHandle(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o) throws Exception {
// 業務處理
return true;
}
複製代碼