If you want to send the http response compressed for example.
First you should determine whether client browser accepts compressed content.
Browsers send this information in http header value Accept-encoding.
if(Request.Headers["Accept-encoding"] != null &&
Request.Headers["Accept-encoding"].Contains("gzip"))
{
}
or
if(Request.Headers["Accept-encoding"] != null &&
Request.Headers["Accept-encoding"].Contains("deflate"))
{
}
Here is the complete code. You can put it in you base page, in OnInit or OnLoad methods for example
if(Request.Headers["Accept-encoding"] != null)
{
if (Request.Headers["Accept-encoding"].Contains("deflate"))
{
Response.Filter = new DeflateStream(Response.Filter, CompressionMode.Compress, true);
Response.AppendHeader("Content-encoding", "deflate"); }
else if (Request.Headers["Accept-encoding"].Contains("deflate"))
{
Response.Filter = new GZipStream(Response.Filter, CompressionMode.Compress, true);
Response.AppendHeader("Content-encoding", "gzip");
}
}
No comments:
Post a Comment