package com.kidgrow.zuul.exception; import com.kidgrow.common.exception.GlobalExceptionHandler; import com.kidgrow.common.model.ResultBody; import com.kidgrow.common.utils.WebUtils; import com.kidgrow.zuul.service.AccessLogService; import lombok.extern.slf4j.Slf4j; import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; /** * 石家庄喜高科技有限责任公司 版权所有 © Copyright 2020
* * @Description: 自定义签名错误处理类
* @Project:
* @CreateDate: Created in 2020/2/4 14:49
* @Author: liuke */ @Slf4j public class JsonSignatureDeniedHandler implements SignatureDeniedHandler { private AccessLogService accessLogService; public JsonSignatureDeniedHandler(AccessLogService accessLogService) { this.accessLogService = accessLogService; } @Override public void handle(HttpServletRequest request, HttpServletResponse response, Exception exception) throws IOException, ServletException { ResultBody resultBody = GlobalExceptionHandler.resolveException(exception,request.getRequestURI()); response.setStatus(resultBody.getHttpStatus()); // 保存日志 accessLogService.sendLog(request, response,exception); WebUtils.writeJson(response, resultBody); } }