SpringBoot 添加自定义的拦截器,却不调用

1.问题:

要添加一个自定义处理Token的问题,现在实现了方法,却发现拦截器没有被调用。
我是在自定义的HandlerInterceptorAdapter里面重写了preHandle方法。并把这个自定义的HandlerInterceptorAdapter添加到了自定义的WebMvcConfigurerAdapter,在WebMvcConfigurerAdapter添加@Configuration注解,但是却没有被调用!

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.希望各路大神,帮小弟指点指点,感谢感谢!

千万里不及你
浏览 458回答 5
5回答

阿晨1998

/**去掉一个*试试

森栏

那你应该把 HandlerInterceptorAdapter 贴出来看看还有就是 2 中那个 @Component 注解 是没有意义的。

精慕HU

@Configuration

叮当猫咪

请问楼主 这个问题 解决了么 我也遇到了 应该是哪里配置错了。启动类配置注解@SpringBootApplication@ServletComponentScan@ComponentScan(basePackages={"com.mcm"}) 就是不调用。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java