执行该方法的时候,进入doGetAuthorizationInfo中进行验证是否存在该权限,无的时候也会继续执行下面的内容,请个位大佬指点。感谢
@RequestMapping("/end")
@RequiresPermissions("contract:end")
@ResponseBody
public Map endContract(Long id) {
try {
customerContractService.updateStatus(id,"4");
return WebResponse.success();
}catch (Exception e){
e.printStackTrace();
return WebResponse.error("操作失败,请联系管理人员!");
}
}
shior 权限进入doGetAuthorizationInfo方法查询无权限,也会执行注解中的方法
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
1条回答 默认 最新
你知我知皆知 2024-08-07 06:50关注以下回答参考 皆我百晓生、券券喵儿 等免费微信小程序相关内容作答,并由本人整理回复。
在Spring Security中,当用户没有访问某个资源的权限时,会触发
@AccessDenied注解的方法。在你提供的代码片段中,如果customerContractService.updateStatus(id, "4")方法抛出了异常(例如数据库操作错误),那么就会跳转到doGetAuthorizationInfo方法并尝试验证是否有相应的权限。在
doGetAuthorizationInfo方法中,首先检查是否已经存在这个权限。如果不存在,它将继续执行其他方法或业务逻辑。因此,即使doGetAuthorizationInfo返回了一个不包含权限信息的对象,也可以通过这种方式来处理和执行后续的操作。这是一个基本的例子,但具体实现可能会根据你的应用程序的需求有所不同。确保正确地配置了
@AccessDenied注解,并且在适当的地方调用此方法以验证权限。解决 无用评论 打赏 举报