SpringWebflux:根据抛出的异常返回状态代码和消息



如何在SpringWebflux中确定抛出哪个异常并从中获取状态代码。这是我的控制器代码的结构。

@GetMapping("/")
fun getResults() : Mono<ResponseEntity<AccountDTO>>{
return Service.getResult()
.map {                     

}.doOnError {
//how to get statuscode here
throw ResponseStatusException(HttpStatus.NOT_FOUND, it.message!!)
}

在这里我可以获得抛出的自定义消息,但如何获得状态代码?我想捕获服务层抛出的状态代码,而不是HttpStatus.NOT_FOUND。或者有没有办法抛出异常?

I found a solution that works. 
@GetMapping("/")
fun getResults() : Mono<ResponseEntity<AccountDTO>>{
return Service.getResult()
.map {                     

}.doOnError {
if(it is NotFoundException)
{

throw ResponseStatusException(HttpStatus.NOT_FOUND)

}
else{
throw ResponseStatusException(HttpStatus.INTERNAL_SERVER_ERROR)
}

}

最新更新