如何配置spring应用程序以将抛出的异常作为消息包含在error 500(内部服务器错误)中?

zengzsys  于 2021-07-16  发布在  Java
关注(0)|答案(1)|浏览(262)

我有一个spring后端应用程序,它抛出一些有用的定制java异常,以响应错误的restapi调用,我还看到过一些教程,其中抛出的异常在返回的code500内部服务器错误中也显示为消息值。我想知道是否有一种方法可以配置spring,使这些抛出的异常消息与500个错误响应一起发送回来。

uwopmtnx

uwopmtnx1#

这可以通过使用此代码来实现。

@ControllerAdvice
class GlobalExceptionHandler {

    @ExceptionHandler(Exception.class)
    ResponseEntity onAnyUnknownException(Exception exception) {
        logger.error("Some unknown exception occured", exception);
        Map<String, Object> userResponse = new HashMap<>();
        userResponse.put("ERROR", "Your custom message");
        return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body(userResponse);
    }
}

相关问题