-
Notifications
You must be signed in to change notification settings - Fork 38.8k
Description
The primary reason for this issue is spring-cloud/spring-cloud-gateway#2795 which under the hood uses UriComponentsBuilder. See this comment specifically: spring-cloud/spring-cloud-gateway#2795 (comment)
In the context of #14904 and #17006 there have been changes made to sanitise multiple consecutive slashes and replace them via a single slash:
spring-framework/spring-web/src/main/java/org/springframework/web/util/UriComponentsBuilder.java
Lines 881 to 891 in 78f28fd
| private static String getSanitizedPath(final StringBuilder path) { | |
| int index = path.indexOf("//"); | |
| if (index >= 0) { | |
| StringBuilder sanitized = new StringBuilder(path); | |
| while (index != -1) { | |
| sanitized.deleteCharAt(index); | |
| index = sanitized.indexOf("//", index); | |
| } | |
| return sanitized.toString(); | |
| } | |
| return path.toString(); |
Technically, there is no restriction on multiple consecutive slashes - those are valid urls, so I think that adding the option of preserving those in UriComponentsBuilder would be a good thing, and would solve the mentioned gateway issue.
What do you think?