You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Hi there!
Thanks for taking a look at this issue. Please let me know if you require more information.
Let's discuss!
Describe the bug
HttpSessionRequestCache#getMatchingRequest relies on org.springframework.web.util.UriComponentsBuilder#fromUriString(String) to be able to handle decoded % characters.
To Reproduce
The org.springframework.web.util.UriComponentsBuilder#fromUriString(String) cannot handle a % followed by characters that result in false %-encoding.
* But the requestURI is not decoded, whereas the servletPath and pathInfo are
The decoded URI could be parsed using WHAT_WG parser type but that's not configurable at that line. @marcusdacoregio can you confirm this analysis? You introduced this line in 18e8836
Hi there!
Thanks for taking a look at this issue. Please let me know if you require more information.
Let's discuss!
Describe the bug
HttpSessionRequestCache#getMatchingRequest
relies onorg.springframework.web.util.UriComponentsBuilder#fromUriString(String)
to be able to handle decoded%
characters.To Reproduce
The
org.springframework.web.util.UriComponentsBuilder#fromUriString(String)
cannot handle a%
followed by characters that result in false %-encoding.This leads to a
org.springframework.web.util.InvalidUrlException: Bad path
when such a request gets to HttpSessionRequestCache#getMatchingRequest.An encoded request
https://example.com/myapp/discounts/30%20%25%20off
is returned decoded by UrlUtils#buildRequestUrl(HttpServletRequest.The UriComponentsBuilder cannot handle this decoded
%
Expected behavior
My request does not result in an
InvalidUrlException
.The text was updated successfully, but these errors were encountered: