KiMoGiGi 技术文集

不在乎选择什么,而在乎坚持多久……

IT博客 首页 联系 聚合 管理
  185 Posts :: 14 Stories :: 48 Comments :: 0 Trackbacks
摘至:对ashx请求用Gzip,Deflated压缩

//GZIP压缩

//查看请求头部
string acceptEncoding = context.Request.Headers["Accept-Encoding"].ToString().ToUpperInvariant();
if (!String.IsNullOrEmpty(acceptEncoding))
{
    
//如果头部里有包含"GZIP”,"DEFLATE",表示你浏览器支持GZIP,DEFLATE压缩
    if (acceptEncoding.Contains("GZIP"))
    {
        
//向输出流头部添加压缩信息
        context.Response.AppendHeader("Content-encoding""gzip");
        context.Response.Filter 
= new GZipStream(context.Response.Filter, CompressionMode.Compress);
    }
    
else if (acceptEncoding.Contains("DEFLATE"))
    {
        
//向输出流头部添加压缩信息
        context.Response.AppendHeader("Content-encoding""deflate");
        context.Response.Filter 
= new DeflateStream(context.Response.Filter, CompressionMode.Compress);
    }
}

这样每次context.Response.Write出支的数据就压缩了

对效多的文本信息压缩可以压缩到原来三分之一到四分之一的样子

如果发送的信息只有几个字节就没有必要了




posted on 2009-09-15 09:06 KiMoGiGi 阅读(517) 评论(0)  编辑 收藏 引用 所属分类: ASP.NETWeb小技巧
只有注册用户登录后才能发表评论。