Hi,
ich bin gerade dabei einen Proxy zu schreiben und sende immer Accept-Encoding: gzip im HTTP Request-Header mit, allerdings ist mir nun nicht klar, wann ich nun einen GZIPInputStream verwenden muss und wann nicht, d.h. wie entpackt man und wie sendet man den Stream quasi direkt an den Client weiter?
Ich dachte damit sende ich entpackte Daten weiter, aber ich bin mir da wirklich nicht mehr sicher bzw. langsam völlig verwirrt.
Viele Grüsse,
Johannes
ich bin gerade dabei einen Proxy zu schreiben und sende immer Accept-Encoding: gzip im HTTP Request-Header mit, allerdings ist mir nun nicht klar, wann ich nun einen GZIPInputStream verwenden muss und wann nicht, d.h. wie entpackt man und wie sendet man den Stream quasi direkt an den Client weiter?
Code:
InputStream in = getMethod.getResponseBodyAsStream();
GZIPInputStream gzipIn = new GZIPInputStream(in);
if(decode == true)
{
logger.debug("Decode: "+decode);
byte[] uncompressedBinaryBody = new byte[8192];
while((gzipIn.read(uncompressedBinaryBody)) != -1)
{
client.getOutputStream().write(uncompressedBinaryBody);
client.getOutputStream().flush();
}
gzipIn.close();
}
Ich dachte damit sende ich entpackte Daten weiter, aber ich bin mir da wirklich nicht mehr sicher bzw. langsam völlig verwirrt.
Viele Grüsse,
Johannes