项目在用Spring security时,需实现通过校验传进来的对象是否包含某个值才能允许该用户进行查询,因此需要使用到@PreAuthorize进行鉴权。
该值是枚举类型,试了好几种写法会报错。
Failed to evaluate expression '#t.type?.toString().equals('ABC')'
成功案例
写法一
@PreAuthorize("#t.type?.toString() == 'ABC'")
fun list(t: Param): Mono<Page<Data>> {
return mono {
service.list(t)
}
}
写法二
@PreAuthorize("#t.type == T(com.xxx.enums.Type).ABC")
fun list(t: Param): Mono<Page<Data>> {
return mono {
service.list(t)
}
}
网友评论