Springboot中带有Exception拦截的Rest api



我有一个rest api:

@RestController

@PostMapping(value = "/v1/ms/prop")
public @ResponseBody ResponseEntity<Object> orch(@RequestBody @Valid Request request){



Response response = serv.prop(request);
return ResponseEntity.ok(response);

和serv.prop(请求):

Response response = new Response ();

try {
calculate(**data**);
callExternalService();
} catch (Exception e) {
**//intercept status error code**
**// writeError(data,errorStatusCode)**

} finally {
writeAuditOperation(auditLog);
MDC.clear();
}

在catch中,我想,只在这个api rest中,拦截错误类型(400,404,500,502 ecc ecc),并调用外部服务记录此错误。

Thanks for the help

与其手动处理控制器中的异常,不如尝试@ExceptionHandler.

检查:https://spring.io/blog/2013/11/01/exception-handling-in-spring-mvc

最新更新