Response.Filter属性实现网站GZIP压缩

香水坏坏 发表于 2007-11-7 [ASP.NET]

Response.Filter属性:在数据发送出去前通过绑定的Filter来修改HTTP实体数据

应用场景(网站内容的GZIP压缩,多语言实现等等。。。)

定义:public Stream Filter{get;set;}

例如,实现网页压缩传输:

C#代码
  1. string str = Request.Headers.Get("Accept-Encoding");   
  2. if (str != null)   
  3. {   
  4.     Stream filter = Response.Filter;   
  5.     str = str.ToLower();   
  6.     if (str.Contains("gzip"))   
  7.     {   
  8.         Response.Filter = new GZipStream(filter, CompressionMode.Compress);   
  9.         Response.AppendHeader("Content-Encoding""gzip");   
  10.     }   
  11.     else if (str.Contains("deflate"))   
  12.     {   
  13.         Response.Filter = new DeflateStream(filter, CompressionMode.Compress);   
  14.         Response.AppendHeader("Content-Encoding""deflate");   
  15.     }   
  16. }  
1086 0 
访客评论
    发表评论
    • 你的姓名:
    • 你的网站:
    •   EMAIL:   
    • 评论内容:
    • 私人