如何使用Spring WebFlux返回404
我有一个像这样的控制器(在Kotlin中):
@RestController@RequestMapping("/")
class CustomerController (private val service: CustomerService) {
@GetMapping("/{id}")
fun findById(@PathVariable id: String,
@RequestHeader(value = IF_NONE_MATCH) versionHeader: String?): Mono<HttpEntity<KundeResource>> =
return service.findById(id)
.switchIfEmpty(Mono.error(NotFoundException()))
.map {
// ETag stuff ...
ok().eTag("...").body(...)
}
}
我想知道是否有比抛出带有注释的异常更好的方法 @ResponseStatus(code = NOT_FOUND)
回答:
可以将方法的实现更改为:
fun findById(@PathVariable id: String, @RequestHeader(value = IF_NONE_MATCH) versionHeader: String?): Mono<ResponseEntity<KundeResource>> =
return service.findById(id)
.map {
// ETag stuff ...
ok().eTag("...").body(...)
}
.defaultIfEmpty(notFound().build())
以上是 如何使用Spring WebFlux返回404 的全部内容, 来源链接: utcz.com/qa/413286.html