Lenient URI encoding handling in ForwardedHeaderTransformer

See gh-30137
This commit is contained in:
Joakim Mohn
2023-03-18 21:28:34 +01:00
committed by rstoyanchev
parent 0f7c406a86
commit a1c4fb3840

View File

@@ -133,6 +133,21 @@ class ForwardedHeaderTransformerTests {
assertForwardedHeadersRemoved(request);
}
@Test
void shouldHandleUnencodedUri() throws Exception {
HttpHeaders headers = new HttpHeaders();
headers.add("Forwarded", "host=84.198.58.199;proto=https");
ServerHttpRequest request = MockServerHttpRequest
.method(HttpMethod.GET, URI.create("https://example.com/a?q=1+1=2"))
.headers(headers)
.build();
request = this.requestMutator.apply(request);
assertThat(request.getURI()).isEqualTo(URI.create("https://84.198.58.199/a?q=1+1=2"));
assertForwardedHeadersRemoved(request);
}
@Test
void shouldConcatenatePrefixes() throws Exception {
HttpHeaders headers = new HttpHeaders();