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

Michael Lee commented on HTTPCLIENT-2118:
-----------------------------------------

The headers log does not tell the whole story. As mentioned in the original 
description of this issue, 5.0.x returned a NoHttpResponseException. After 
that, it retried the GET request and then got a 403. You can refer to the 
attached test_output.txt that captured this event/exception:

{noformat}
2020-10-01 14:07:33.826 INFO  [main] demo.HttpClientTests                     : 
Link:   
https://github.com/git-for-windows/git/releases/download/v2.28.0.windows.1/Git-2.28.0-64-bit.exe
2020-10-01 14:07:34.111 INFO  [main] o.a.h.c.h.i.c.HttpRequestRetryExec       : 
Recoverable I/O exception (org.apache.hc.core5.http.NoHttpResponseException) 
caught when processing request to 
{s}->https://github-production-release-asset-2e65be.s3.amazonaws.com:443
2020-10-01 14:07:35.397 INFO  [main] demo.HttpClientTests                     : 
Status: 403{noformat}

On the other hand, 4.1.x handled the redirect, did not throw the 
ResponseException and returned 304.

> Difference in behavior between 4.5.x and 5.0.x - CloseableHttpClient returns 
> 403 after NoHttpResponseException
> --------------------------------------------------------------------------------------------------------------
>
>                 Key: HTTPCLIENT-2118
>                 URL: https://issues.apache.org/jira/browse/HTTPCLIENT-2118
>             Project: HttpComponents HttpClient
>          Issue Type: Bug
>          Components: HttpClient (classic), HttpClient (Windows)
>    Affects Versions: 5.0.2
>         Environment: Microsoft Windows 10 version 2004 [10.0.19041.508]
> Oracle JDK 11.0.8
>            Reporter: Michael Lee
>            Priority: Major
>         Attachments: demo.zip, headers.log, test_output.txt
>
>
> My application reuses an instance of CloseableHttpClient to retrieve the 
> content from a list of URLs. After upgrading HttpClient from 4.5.x to 5.0.2 
> (also 5.0 and 5.0.1), it always gets a NoHttpResponseException followed by a 
> response code of 403 for a particular URL in the list.  When using 4.5.x, it 
> always gets a 200 or 304 for that particular URL.
> The behavior may be different if the order of the URLs in the list is changed.
> To illustrate the problem, I have extracted code from my application into the 
> sample Maven project attached. In the JUnit test, testHttpClient4() will get 
> either 200 or 304 for all the URLs. On the other hand, testHttpClient5() 
> always gets 403 for the last URL in the list. In this project, I 
> intentionally added a If-Modified-Since header with the value being current 
> time minus 1 minute so that we should get a 304 from most of the URLs.
> Can you investigate if this is really an obscure bug or an undocumented 
> behavior change related to how CloseableHttpClient handles redirects?
> Thanks.



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

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

Reply via email to