[ 
https://issues.apache.org/jira/browse/HTTPCLIENT-2040?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17003145#comment-17003145
 ] 

ASF subversion and git services commented on HTTPCLIENT-2040:
-------------------------------------------------------------

Commit a2ebb628813c9c794746c3e75d51623b4a2e317d in httpcomponents-client's 
branch refs/heads/master from Oleg Kalnichevski
[ https://gitbox.apache.org/repos/asf?p=httpcomponents-client.git;h=a2ebb62 ]

HTTPCLIENT-2040: Copy headers from the original request to the redirect request


> Headers are not sent when following redirects
> ---------------------------------------------
>
>                 Key: HTTPCLIENT-2040
>                 URL: https://issues.apache.org/jira/browse/HTTPCLIENT-2040
>             Project: HttpComponents HttpClient
>          Issue Type: Bug
>          Components: HttpClient (classic)
>    Affects Versions: 5.0 Beta6
>            Reporter: Jeff Schnitzer
>            Priority: Major
>
> It appears that headers are not sent when following redirects.
> RedirectExec.execute() contains this code:
> {code:java} 
>                     switch (statusCode) {
>                         case HttpStatus.SC_MOVED_PERMANENTLY:
>                         case HttpStatus.SC_MOVED_TEMPORARILY:
>                         case HttpStatus.SC_SEE_OTHER:
>                             if (!Methods.isSafe(request.getMethod())) {
>                                 final HttpGet httpGet = new 
> HttpGet(redirectUri);
>                                 
> httpGet.setHeaders(originalRequest.getHeaders());
>                                 redirect = httpGet;
>                             } else {
>                                 redirect = null;
>                             }
>                     }
>                     if (redirect == null) {
>                         redirect = new 
> BasicClassicHttpRequest(originalRequest.getMethod(), redirectUri);
>                         redirect.setEntity(originalRequest.getEntity());
>                     }
>  {code}
> If the method is not 'safe' and converted to a GET, headers get copied from 
> the original request. Otherwise, the original headers are silently dropped.
> Desired behavior: Headers should always be copied from the original request. 
> That was the behavior of HttpClient 4.x.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to