Uso HttpListener para mi propio servidor http (no utilizo IIS). Quiero comprimir mi OutputStream por compresión gzip:C# HttpListener Response + GZipStream
byte[] refBuffer = Encoding.UTF8.GetBytes(...some data source...);
var varByteStream = new MemoryStream(refBuffer);
System.IO.Compression.GZipStream refGZipStream = new GZipStream(varByteStream, CompressionMode.Compress, false);
refGZipStream.BaseStream.CopyTo(refHttpListenerContext.Response.OutputStream);
refHttpListenerContext.Response.AddHeader("Content-Encoding", "gzip");
Pero yo conseguir el error en Chrome:
ERR_CONTENT_DECODING_FAILED
Si quito AddHeader, entonces funciona, pero el tamaño de la respuesta no parece estar siendo comprimida. ¿Qué estoy haciendo mal?
Es imposible que algo no se comprima debido a un encabezado, dado que en realidad está escribiendo explícitamente el contenido como comprimido. ¿Estás seguro de que Chrome no te está dando el tamaño * descomprimido * del archivo? – Ryan
@minitech, buenas preguntas! Estoy tratando de verificar el tamaño real del tráfico. – Edward83