Hello,
I'm in the middle of upgrading Httpclient, mime, core libraries to
latest version. I haven't been able to figure out any solution to the
following problem.
When Httpclient downloads a text file(icité Àâqë-withmultibytechars.txt)
which contains multibyte characters from another server and sends it to
the browser.
*The server returns the response headers as below :*
HTTP/1.1 200 OK
X-Powered-By: Servlet/2.5
Content-Disposition: attachment; filename="icité
Àâqë-withmultibytechars.txt"
Content-Type: application/octet-stream
Content-Length: 162
*
**Browser receives the headers as below and shows the filename rightly :*
Content-Disposition attachment; filename="icité
Àâqë-withmultibytechars.txt"
Content-Type application/octet-stream
Transfer-Encoding chunked
When Httpclient downloads an image file(ウェ.jpg) from another server
and sends it to the browser.
*The server returns the response headers as below : *
HTTP/1.1 200 OK
X-Powered-By: Servlet/2.5
Content-Disposition: attachment; filename="ウェ.jpg"
Content-Encoding: gzip
Content-Type: application/octet-stream
Transfer-Encoding: chunked
Even though "Content-Encoding: gzip" header is returned by the server,
the response object doesn't have this header.
Somehow this header has been removed from the response when the request
gets executed, _response = _httpClient.execute(_httpHost, _httpMethod,
_httpContext);
*Browser will not receive this header, non-ascii characters aren't
recognized in the filename of download dialogue, it just shows empty
characters:*
Content-Disposition attachment; filename=" .jpg"
Content-Type application/octet-stream
Transfer-Encoding chunked, chunked
Am I missing something here ? How do I make sure that the Httpclient
doesn't ignore this header and browser get to show the filename rightly ?
Thanks & Regards,
Dhruva