-
Enhancement
-
Resolution: Unresolved
-
P4
-
None
-
11
-
generic
-
generic
ADDITIONAL SYSTEM INFORMATION :
openjdk 11.0.17 2022-10-18
OpenJDK Runtime Environment (build 11.0.17+8-post-Ubuntu-1ubuntu218.04)
OpenJDK 64-Bit Server VM (build 11.0.17+8-post-Ubuntu-1ubuntu218.04, mixed mode, sharing)
A DESCRIPTION OF THE PROBLEM :
I am using Java jdk11 HttpClient.
I am trying to manually provide host header for my HTTP requests. To enable this behaviour, I am settting
-Djdk.httpclient.allowRestrictedHeaders=host
Host header is not getting overriden when I make request to the HTTP 2 supporting server. The request I am using is:
HttpRequest request =
HttpRequest.newBuilder()
.version(HttpClient.Version.HTTP_2)
.uri(URI.create("https://httpbin.org/get"))
.header("Host", "someHost")
.GET().build();
Here the host does not get overriden to "someHost" and "httpbin.org" is sent as host in the request.
Whereas if I use HTTP 1.1 to make the same request, I works as expected:
HttpRequest request =
HttpRequest.newBuilder()
.version(HttpClient.Version.HTTP_1_1)
.uri(URI.create("https://httpbin.org/get"))
.header("Host", "someHost")
.GET().build();
Here the host header received by server is "someHost", which is expected behaviour.
FREQUENCY : always
openjdk 11.0.17 2022-10-18
OpenJDK Runtime Environment (build 11.0.17+8-post-Ubuntu-1ubuntu218.04)
OpenJDK 64-Bit Server VM (build 11.0.17+8-post-Ubuntu-1ubuntu218.04, mixed mode, sharing)
A DESCRIPTION OF THE PROBLEM :
I am using Java jdk11 HttpClient.
I am trying to manually provide host header for my HTTP requests. To enable this behaviour, I am settting
-Djdk.httpclient.allowRestrictedHeaders=host
Host header is not getting overriden when I make request to the HTTP 2 supporting server. The request I am using is:
HttpRequest request =
HttpRequest.newBuilder()
.version(HttpClient.Version.HTTP_2)
.uri(URI.create("https://httpbin.org/get"))
.header("Host", "someHost")
.GET().build();
Here the host does not get overriden to "someHost" and "httpbin.org" is sent as host in the request.
Whereas if I use HTTP 1.1 to make the same request, I works as expected:
HttpRequest request =
HttpRequest.newBuilder()
.version(HttpClient.Version.HTTP_1_1)
.uri(URI.create("https://httpbin.org/get"))
.header("Host", "someHost")
.GET().build();
Here the host header received by server is "someHost", which is expected behaviour.
FREQUENCY : always