内置对象

Request对象

context.Request.UrlReferrer的使用

public void ProcessRequest(HttpContext context)
        {
            context.Response.ContentType = "image/JPEG";
            string fullpath = HttpContext.Current.Server.MapPath("1.jpg");
            using (Bitmap bitmap = new Bitmap(fullpath))
            {
                using (Graphics g = Graphics.FromImage(bitmap))
                {
                    if (context.Request.UrlReferrer == null)
                    {
                        g.Clear(Color.White);
                        g.DrawString("禁止浏览",new Font("宋体",30),Brushes.Red,0,0);
                    }
                    else if (context.Request.UrlReferrer.Host != "localhost")
                    {
                        g.DrawString("内部使用", new Font("宋体", 30), Brushes.Red, 0, 0);
                    }
                    g.DrawString(context.Request.UserHostAddress, new Font("宋体", 30), Brushes.Red, 0, 0);
                }
                bitmap.Save(context.Response.OutputStream,ImageFormat.Jpeg);
            }
            
        }

Response对象 

响应缓存输出
Response.Buffer是否启用缓存
Response.Flush将缓存中数据立即发送给浏览器
Response.Clear清空缓存区

Server对象

Server对象是context的一个属性 Server.HtmlDecode() Server.HtmlEncode(),Server.UrlEncode()处理中文 Server.Transfer服务器内部接管,发生一次请求,浏览器地址不会发生变化,只能是内部虚拟路径请求,不能是外部网站 Response.Redirect是可以的  

 

HttpHandler

 //保存图片
            context.Response.ContentType = "image/JPEG";
            string filename = HttpUtility.UrlEncode("哈哈.jpg");
            context.Response.AddHeader("Content-Disposition","attachment;filename="+filename);
            context.Response.WriteFile("1.jpg");

Page对象

AppRelativeVirtualPath属性,获取页面相当于应用根路径的路径  

posted @ 2014-03-01 21:15  bradleydan  阅读(116)  评论(0)    收藏  举报