Sa-Token icon indicating copy to clipboard operation
Sa-Token copied to clipboard

SaInterceptor拦截器中功能未生效

Open hanweidong opened this issue 1 year ago • 0 comments

使用版本:

1.39.0

报错信息:

我想在SaInterceptor中对越权访问的用户记录日志,但是代码好像没有生效。

希望结果:

对越权访问的用户记录日志

复现步骤:

@Override public void addInterceptors(InterceptorRegistry registry) { // 注册 Sa-Token 拦截器,打开注解式鉴权功能 registry.addInterceptor(new SaInterceptor(handle -> { Object loginId = StpUtil.getLoginId(); log.info("loginId is {}", loginId); try { Account account = accountService.findById((String) loginId); String role = account.getRoleType().name();

    SaRouter.match("/**").check(r -> {
      StpUtil.checkRole(role);
    });
  } catch (NotRoleException | CommonException e){
    log.info("not role exception.");
  }
})).addPathPatterns("/**");

}

< 备注:如果复现步骤比较复杂,请将 demo 上传到 gitee 并留下地址 >

hanweidong avatar Sep 13 '24 03:09 hanweidong