| | |
| | | import org.springframework.web.bind.MethodArgumentNotValidException; |
| | | import org.springframework.web.bind.MissingPathVariableException; |
| | | import org.springframework.web.bind.annotation.ExceptionHandler; |
| | | import org.springframework.web.bind.annotation.ResponseStatus; |
| | | import org.springframework.web.bind.annotation.RestControllerAdvice; |
| | | import org.springframework.web.method.annotation.MethodArgumentTypeMismatchException; |
| | | import org.springframework.web.servlet.NoHandlerFoundException; |
| | | |
| | | import java.io.IOException; |
| | | |
| | | /** |
| | | * 全局异常处理器 |
| | |
| | | /** |
| | | * 拦截未知的运行时异常 |
| | | */ |
| | | @ResponseStatus(org.springframework.http.HttpStatus.INTERNAL_SERVER_ERROR) |
| | | @ExceptionHandler(IOException.class) |
| | | public void handleRuntimeException(IOException e, HttpServletRequest request) { |
| | | String requestURI = request.getRequestURI(); |
| | | if (requestURI.contains("sse")) { |
| | | // sse 经常性连接中断 例如关闭浏览器 直接屏蔽 |
| | | return; |
| | | } |
| | | log.error("请求地址'{}',连接中断", requestURI, e); |
| | | } |
| | | |
| | | /** |
| | | * 拦截未知的运行时异常 |
| | | */ |
| | | @ExceptionHandler(RuntimeException.class) |
| | | public R<Void> handleRuntimeException(RuntimeException e, HttpServletRequest request) { |
| | | String requestURI = request.getRequestURI(); |