首页 新闻 会员 周边 捐助

拦截器设置放行路径失败

0
悬赏园豆:10 [已解决问题] 解决于 2022-05-17 20:47

项目配置:框架Springboot 2.5、模板thymeleaf。

public class MyInterceptor implements HandlerInterceptor {
    @Override
    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
        String userName = (String) request.getSession().getAttribute("userName");
        if(userName != null){
            return true;
        }
        response.sendRedirect("/login.html");
        return false;
    }
}

@Configuration
public class MyConfig implements WebMvcConfigurer {
    @Override
    public void addInterceptors(InterceptorRegistry registry) {
        registry.addInterceptor(new MyInterceptor()).addPathPatterns("/**")
                .excludePathPatterns("/login.html", "/register.html",  "/static/**");
    }
}

但是访问 /login.html仍然被拦截器拦截,进入到prehandle方法。
求大神指教

up-bear的主页 up-bear | 初学一级 | 园豆:134
提问于:2021-12-16 22:18
< >
分享
最佳答案
0

太神奇了,许久之后我又在另一个demo中使用拦截器,竟然放行成功了,可能是两侧springboot版本不同的原因,有点无语。

up-bear | 初学一级 |园豆:134 | 2022-05-17 20:46
其他回答(1)
0

加个 super.addIn... 试试?

收获园豆:10
快乐的欧阳天美1114 | 园豆:4010 (老鸟四级) | 2021-12-16 23:04

好的,我去试试

支持(0) 反对(0) up-bear | 园豆:134 (初学一级) | 2021-12-16 23:45

不行吧,这个suer.addInterceptor会报错,WebConfig中这个是空方法

支持(0) 反对(0) up-bear | 园豆:134 (初学一级) | 2021-12-17 19:15
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册