我使用HttpListener为我自己的http服务器(我不使用IIS)。我想压缩由gzip压缩我的OutputStream:C#HttpListener响应+ 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");
但我在Chrome中得到错误:
ERR_CONTENT_DECODING_FAILED
如果我删除AddHeader的,那么它的工作原理,但大小回应似乎没有被压缩。我究竟做错了什么?
由于你实际上明确地写内容为压缩的,所以不可能因某个头文件而被压缩。你确定Chrome不仅仅给你文件的解压缩大小吗? – Ryan
@minitech,很好的问题!我试图检查流量的实际大小。 – Edward83