diff --git a/spring-web/src/main/java/org/springframework/http/client/reactive/ReactorClientHttpConnector.java b/spring-web/src/main/java/org/springframework/http/client/reactive/ReactorClientHttpConnector.java index 10de1621f6f..6c523e9fb76 100644 --- a/spring-web/src/main/java/org/springframework/http/client/reactive/ReactorClientHttpConnector.java +++ b/spring-web/src/main/java/org/springframework/http/client/reactive/ReactorClientHttpConnector.java @@ -105,9 +105,12 @@ public class ReactorClientHttpConnector implements ClientHttpConnector { AtomicReference responseRef = new AtomicReference<>(); - return this.httpClient - .request(io.netty.handler.codec.http.HttpMethod.valueOf(method.name())) - .uri(uri) + HttpClient.RequestSender requestSender = this.httpClient + .request(io.netty.handler.codec.http.HttpMethod.valueOf(method.name())); + + requestSender = (uri.isAbsolute() ? requestSender.uri(uri) : requestSender.uri(uri.toString())); + + return requestSender .send((request, outbound) -> requestCallback.apply(adaptRequest(method, uri, request, outbound))) .responseConnection((response, connection) -> { responseRef.set(new ReactorClientHttpResponse(response, connection)); diff --git a/spring-web/src/main/java/org/springframework/http/client/reactive/ReactorNetty2ClientHttpConnector.java b/spring-web/src/main/java/org/springframework/http/client/reactive/ReactorNetty2ClientHttpConnector.java index fb1303ca8d3..d334479debf 100644 --- a/spring-web/src/main/java/org/springframework/http/client/reactive/ReactorNetty2ClientHttpConnector.java +++ b/spring-web/src/main/java/org/springframework/http/client/reactive/ReactorNetty2ClientHttpConnector.java @@ -106,9 +106,12 @@ public class ReactorNetty2ClientHttpConnector implements ClientHttpConnector { AtomicReference responseRef = new AtomicReference<>(); - return this.httpClient - .request(io.netty5.handler.codec.http.HttpMethod.valueOf(method.name())) - .uri(uri) + HttpClient.RequestSender requestSender = this.httpClient + .request(io.netty5.handler.codec.http.HttpMethod.valueOf(method.name())); + + requestSender = (uri.isAbsolute() ? requestSender.uri(uri) : requestSender.uri(uri.toString())); + + return requestSender .send((request, outbound) -> requestCallback.apply(adaptRequest(method, uri, request, outbound))) .responseConnection((response, connection) -> { responseRef.set(new ReactorNetty2ClientHttpResponse(response, connection));