src/main/java/com/yj/oa/common/exception/permission/PermisExceptionResolver.java
(完整代码) 1KBpackage com.yj.oa.common.exception.permission;
import com.alibaba.druid.support.json.JSONUtils;
import com.yj.oa.common.utils.AjaxUtis;
import com.yj.oa.framework.web.controller.BaseController;
import org.apache.shiro.authz.UnauthorizedException;
import org.springframework.stereotype.Component;
import org.springframework.web.servlet.HandlerExceptionResolver;
import org.springframework.web.servlet.ModelAndView;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.PrintWriter;
import java.util.HashMap;
import java.util.Map;
/**
* @author 永健
*
* 解决权限异常
*
*/
@Component
public class PermisExceptionResolver implements HandlerExceptionResolver{
public ModelAndView resolveException(HttpServletRequest request, HttpServletResponse response, Object handler,
Exception ex)
{
if (!AjaxUtis.isAjax(request))
{
// 如果是shiro无权操作,因为shiro 在操作auno等一部分不进行转发至无权限url
if (ex instanceof UnauthorizedException)
{
ModelAndView mv = new ModelAndView("error/unauth.html");
return mv;
}
}else {
if (ex instanceof UnauthorizedException)
{
Map<String, String> map = new HashMap<>();
map.put("code", "1");
map.put("msg", "对不起,权限不足");
AjaxUtis.out(response,map);
}
}
return null;
}
}
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。