Я делаю обработчик , который создает ресурс, поэтому я хочу использовать ServerResponse.created , но не восток вернуть заголовок Местоположение и тело. Прямо сейчас я использую наборы, но мне это не нравится.
@Override
public Mono<ServerResponse> postBillingData(final ServerRequest request) {
return service(request
.bodyToMono(BillingDataResource.class))
.map(resource -> {
final URI uri = request.uriBuilder().path("/{billingDataId}").build(resource.getId());
return Tuples.of(uri, resource);
})
.flatMap(zip ->
created(zip.getT1())
.contentType(APPLICATION_JSON_UTF8)
.body(Mono.just(zip.getT2()), BillingDataResource.class));
}
private Mono<BillingDataResource> service(final Mono<BillingDataResource> mono) {
return mono
.doOnNext(log::info)
.map(resource -> resource.withId(8L))
.log();
}
любой совет.