hc-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Oleg Kalnichevski (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (HTTPCLIENT-1641) CircularRedirect due to rebuilding URI after decoding path, etc.
Date Fri, 17 Apr 2015 17:59:59 GMT

     [ https://issues.apache.org/jira/browse/HTTPCLIENT-1641?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel

Oleg Kalnichevski updated HTTPCLIENT-1641:
    Fix Version/s: 4.5

I want to completely rewrite #normalizeSyntax. Will have to wait until 4.5.


> CircularRedirect due to rebuilding URI after decoding path, etc.
> ----------------------------------------------------------------
>                 Key: HTTPCLIENT-1641
>                 URL: https://issues.apache.org/jira/browse/HTTPCLIENT-1641
>             Project: HttpComponents HttpClient
>          Issue Type: Bug
>          Components: HttpClient
>    Affects Versions: 4.3.5
>            Reporter: Nick Trown
>            Priority: Minor
>             Fix For: 4.5
> When I use HttpClient for the following URL the DefaultRedirectStrategy fails to build
a redirected URI properly.
> http://hotpads.com/apartments/Camelot-Apartments-(-Drexel-&-UPenn-)-Philadelphia-PA-19104--3phq8mahfzya3
> The reason is that the redirect URL returned is:
> /apartments/Camelot-Apartments-%28-Drexel-%26-UPenn-%29-Philadelphia-PA-19104--3phq8mahfzya3
> ** Note: the only difference is that the redirect URL has the parens encoded.
> The DefaultDirectEncoder does get the redirect URL, and since it is not absolute eventually
calls URIUtils.resolve().  This then calls normalizeSyntax() where the bug is.
> In normalizeSyntax() the URI is reconstructed.  However, it incorrectly uses getPath(),
getFragment(), etc.  instead of the raw equivalents such as getRawPath(), getRawFragment(),
> In this case, the getPath() returned is therefore:
> apartments/Camelot-Apartments-(-Drexel-&-UPenn-)-Philadelphia-PA-19104--3phq8mahfzya3
> Where the parens are back.  The DefaultRedirectStrategy detects this as a circular redirect.

This message was sent by Atlassian JIRA

To unsubscribe, e-mail: dev-unsubscribe@hc.apache.org
For additional commands, e-mail: dev-help@hc.apache.org

View raw message