1.問題:
要添加一個(gè)自定義處理Token的問題,現(xiàn)在實(shí)現(xiàn)了方法,卻發(fā)現(xiàn)攔截器沒有被調(diào)用。
我是在自定義的HandlerInterceptorAdapter里面重寫了preHandle方法。并把這個(gè)自定義的HandlerInterceptorAdapter添加到了自定義的WebMvcConfigurerAdapter,在WebMvcConfigurerAdapter添加@Configuration注解,但是卻沒有被調(diào)用!
2.代碼:自定義的HandlerInterceptorAdapter的AccessTokenVerifyInterceptor:
@Component
public class AccessTokenVerifyInterceptor extends HandlerInterceptorAdapter {
private Logger logger = LoggerFactory.getLogger(AccessTokenVerifyInterceptor.class);
@Autowired
private FFAccessTokenService tokenService;
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler)
throws Exception {
// TODO Auto-generated method stub
logger.info("AccessToken executing ...");
return true;
}
}
自定義的WebMvcConfigurerAdapter類FFWebMvcConfigurer:
@Configuration
public class FFWebMvcConfigurer extends WebMvcConfigurerAdapter {
@Override
public void addViewControllers(ViewControllerRegistry registry) {
// TODO Auto-generated method stub
registry.addViewController("/error").setViewName("404.html");
registry.setOrder(Ordered.HIGHEST_PRECEDENCE);
super.addViewControllers(registry);
}
@Override
public void configurePathMatch(PathMatchConfigurer configurer) {
configurer.setUseSuffixPatternMatch(false);
super.configurePathMatch(configurer);
}
@Override
public void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(new AccessTokenVerifyInterceptor())
.addPathPatterns("/**")
.excludePathPatterns("/access-token");
super.addInterceptors(registry);
System.out.println("開始開始咯。。。。");
}
}
3.希望各路大神,幫小弟指點(diǎn)指點(diǎn),感謝感謝!
5 回答

森欄
TA貢獻(xiàn)1810條經(jīng)驗(yàn) 獲得超5個(gè)贊
那你應(yīng)該把 HandlerInterceptorAdapter 貼出來看看
還有就是 2 中那個(gè) @Component 注解 是沒有意義的。

叮當(dāng)貓咪
TA貢獻(xiàn)1776條經(jīng)驗(yàn) 獲得超12個(gè)贊
請問樓主 這個(gè)問題 解決了么 我也遇到了 應(yīng)該是哪里配置錯(cuò)了。
啟動(dòng)類配置注解
@SpringBootApplication
@ServletComponentScan
@ComponentScan(basePackages={"com.mcm"})
就是不調(diào)用。
添加回答
舉報(bào)
0/150
提交
取消