一、该问题的重现步骤是什么?
1. copy下面的代码,并修改@Before里的包名
2. 新建一个controller类,以及方法,并在方法上加@TokenValidate
3.添加该方法到BladeConfiguration的secureRegistry.excludePathPatterns("")
4.运行
二、你期待的结果是什么?实际看到的又是什么?
期望调用方法时先调用注解里的代码;
实际没有调用注解里的代码,直接进入方法内。
三、你正在使用的是什么产品,什么版本?在什么操作系统上?
BladeX-Boot 2.8.0 win10
四、请提供详细的错误堆栈信息,这很重要。
无错误
五、若有更多详细信息,请在下面提供。
参照PreAuth写的注解代码:
@Target({ElementType.METHOD, ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
public @interface TokenValidate {}
@Aspect
@Order(1)
public class JwtTokenAspect{
/**
* 切方法 @TokenValidate 注解
*
* @param point 切点
* @return Object
* @throws Throwable 没有权限的异常
*/
@Before("execution(public * org.springblade.modules.busi.controller.*(..)) && @annotation(org.springblade.common.annotations.TokenValidate)" )
public Object tokenValidate(ProceedingJoinPoint point) throws Throwable {
System.out.print("123");
return point.proceed();
}
扫一扫访问 Blade技术社区 移动端