Browse Source

The HTTP protocol version: it misses in AsyncApacheHttp5Client's response and hardcoded in Request.toString() (#2097)

* Missed the HTTP protocol version in HC5. The hardcoded protocol version in Request.toString()

* Fix formatting
pull/2100/head
Vitalij Berdinskih 1 year ago committed by GitHub
parent
commit
e4d2bed76b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 3
      core/src/main/java/feign/Request.java
  2. 3
      hc5/src/main/java/feign/hc5/AsyncApacheHttp5Client.java

3
core/src/main/java/feign/Request.java

@ -276,7 +276,8 @@ public final class Request implements Serializable { @@ -276,7 +276,8 @@ public final class Request implements Serializable {
@Override
public String toString() {
final StringBuilder builder = new StringBuilder();
builder.append(httpMethod).append(' ').append(url).append(" HTTP/1.1\n");
builder.append(httpMethod).append(' ').append(url).append(' ').append(protocolVersion)
.append('\n');
for (final String field : headers.keySet()) {
for (final String value : valuesOrEmpty(headers, field)) {
builder.append(field).append(": ").append(value).append('\n');

3
hc5/src/main/java/feign/hc5/AsyncApacheHttp5Client.java

@ -28,6 +28,7 @@ import java.util.*; @@ -28,6 +28,7 @@ import java.util.*;
import java.util.concurrent.CompletableFuture;
import feign.*;
import feign.Request.Options;
import static feign.Util.enumForName;
/**
* This module directs Feign's http requests to Apache's
@ -179,6 +180,8 @@ public final class AsyncApacheHttp5Client implements AsyncClient<HttpClientConte @@ -179,6 +180,8 @@ public final class AsyncApacheHttp5Client implements AsyncClient<HttpClientConte
}
return Response.builder()
.protocolVersion(
enumForName(Request.ProtocolVersion.class, httpResponse.getVersion().format()))
.status(statusCode)
.reason(reason)
.headers(headers)

Loading…
Cancel
Save