content: package site.alanliang.geekblog.security;
  
  import org.springframework.security.access.AccessDeniedException;
  import org.springframework.security.web.access.AccessDeniedHandler;
  import org.springframework.stereotype.Component;
  import site.alanliang.geekblog.utils.AjaxUtil;
  
  import javax.servlet.http.HttpServletRequest;
  import javax.servlet.http.HttpServletResponse;
  import java.io.IOException;
  
  @Component
  public class MyAccessDeniedHandler implements AccessDeniedHandler {
  
      @Override
      public void handle(HttpServletRequest request, HttpServletResponse response, AccessDeniedException accessDeniedException)
              throws IOException {
          response.setStatus(HttpServletResponse.SC_FORBIDDEN);
          response.setCharacterEncoding("utf-8");
          if (AjaxUtil.isAjaxRequest(request)) {
              response.sendError(403);
          } else if (!response.isCommitted()) {
              response.sendError(HttpServletResponse.SC_FORBIDDEN,
                      accessDeniedException.getMessage());
          }
      }
  
  }
  