diff --git a/spring-cloud-gateway-server-mvc/src/main/java/org/springframework/cloud/gateway/server/mvc/filter/BeforeFilterFunctions.java b/spring-cloud-gateway-server-mvc/src/main/java/org/springframework/cloud/gateway/server/mvc/filter/BeforeFilterFunctions.java index 2941213c..eb860a30 100644 --- a/spring-cloud-gateway-server-mvc/src/main/java/org/springframework/cloud/gateway/server/mvc/filter/BeforeFilterFunctions.java +++ b/spring-cloud-gateway-server-mvc/src/main/java/org/springframework/cloud/gateway/server/mvc/filter/BeforeFilterFunctions.java @@ -332,7 +332,11 @@ public abstract class BeforeFilterFunctions { String path = request.uri().getPath(); String newPath = pattern.matcher(path).replaceAll(normalizedReplacement); - URI rewrittenUri = UriComponentsBuilder.fromUri(request.uri()).replacePath(newPath).encode().build().toUri(); + URI rewrittenUri = UriComponentsBuilder.fromUri(request.uri()) + .replacePath(newPath) + .encode() + .build() + .toUri(); ServerRequest modified = ServerRequest.from(request).uri(rewrittenUri).build(); diff --git a/spring-cloud-gateway-server-mvc/src/test/java/org/springframework/cloud/gateway/server/mvc/filter/BeforeFilterFunctionsTests.java b/spring-cloud-gateway-server-mvc/src/test/java/org/springframework/cloud/gateway/server/mvc/filter/BeforeFilterFunctionsTests.java index 6079199e..f6ba296e 100644 --- a/spring-cloud-gateway-server-mvc/src/test/java/org/springframework/cloud/gateway/server/mvc/filter/BeforeFilterFunctionsTests.java +++ b/spring-cloud-gateway-server-mvc/src/test/java/org/springframework/cloud/gateway/server/mvc/filter/BeforeFilterFunctionsTests.java @@ -186,8 +186,7 @@ class BeforeFilterFunctionsTests { @Test void rewritePath() { - MockHttpServletRequest servletRequest = MockMvcRequestBuilders.get("http://localhost/get") - .buildRequest(null); + MockHttpServletRequest servletRequest = MockMvcRequestBuilders.get("http://localhost/get").buildRequest(null); ServerRequest request = ServerRequest.create(servletRequest, Collections.emptyList()); @@ -199,7 +198,7 @@ class BeforeFilterFunctionsTests { @Test void rewritePathWithSpace() { MockHttpServletRequest servletRequest = MockMvcRequestBuilders.get("http://localhost/get/path/with spaces") - .buildRequest(null); + .buildRequest(null); ServerRequest request = ServerRequest.create(servletRequest, Collections.emptyList()); @@ -211,7 +210,7 @@ class BeforeFilterFunctionsTests { @Test void rewritePathWithEnDash() { MockHttpServletRequest servletRequest = MockMvcRequestBuilders.get("http://localhost/get/path/with–en–dashes") - .buildRequest(null); + .buildRequest(null); ServerRequest request = ServerRequest.create(servletRequest, Collections.emptyList()); @@ -222,14 +221,16 @@ class BeforeFilterFunctionsTests { @Test void rewritePathWithEnDashAndSpace() { - MockHttpServletRequest servletRequest = MockMvcRequestBuilders.get("http://localhost/get/path/with–en–dashes and spaces") - .buildRequest(null); + MockHttpServletRequest servletRequest = MockMvcRequestBuilders + .get("http://localhost/get/path/with–en–dashes and spaces") + .buildRequest(null); ServerRequest request = ServerRequest.create(servletRequest, Collections.emptyList()); ServerRequest modified = BeforeFilterFunctions.rewritePath("get", "modified").apply(request); - assertThat(modified.uri().getRawPath()).isEqualTo("/modified/path/with%E2%80%93en%E2%80%93dashes%20and%20spaces"); + assertThat(modified.uri().getRawPath()) + .isEqualTo("/modified/path/with%E2%80%93en%E2%80%93dashes%20and%20spaces"); } }