黑马程序员——一般处理程序(1)

本文介绍了ASP.NET中的一般处理程序(.ashx)的使用,包括实现IHttphandler接口及其ProcessRequest方法,重点讲解了HttpContext对象的Request、Response、Server和Session等重要成员的功能和常用操作,如Request的表单数据、Response的重定向以及Server的MapPath方法等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

---------------------- Windows Phone 7手机开发.Net培训、期待与您交流! ----------------------  

在一个ASP.NET的项目中添加一个一般处理程序页面(*.ashx)后,文件中的内容如下,现在就这些内容总结一下里面的知识点。

public class Handler1 : IHttpHandler
    {

        public void ProcessRequest(HttpContext context)
        {
            context.Response.ContentType = "text/plain";
            context.Response.Write("Hello World");
        }

        public bool IsReusable
        {
            get
            {
                return false;
            }
        }
    }


1.IHttphandler接口

public interface IHttpHandler
    {
        bool IsReusable { get; }
        void ProcessRequest(HttpContext context);
    }

属性IsReusable是用来标示页面类对象是否能够被其它请求重用,true表示可以被重用,false则不能。
方法ProcessRequest用来在服务器端处理来自客户端的请求。

2.HttpContext Http上下文

它表示一次Http请求的上下文,IHttphandler接口的ProcessRequest方法接受这样的一个参数,以便于完成请求的处理。

一个HttpContext对象中包含了大量的属性和方法,下面只是对其中比较常用的几个成员进行介绍:

2.1 Request对象

它表示一个http请求,包含了从浏览器传送过来的数据,其中比较常用的成员有:

Form属性,它是一个NameValueCollection类型的对象,包含了表单中的数据;

Browser属性,使得服务器可以收集浏览器的一些信息,可以用来处理各种浏览器的兼容问题;

Cookies属性,它是浏览器发送过来的Cookie集合;

QueryString属性,获取 HTTP 查询字符串变量集合。

2.2Response对象

封装来自 ASP.NET 操作的 HTTP 响应信息,其中比较常用的成员有:

Write方法,用来向输出缓存中写入数据,有多重形式的重载;

Redirect方法,将请求重定向到新 URL 并指定该新 URL;

End方法,将当前所有缓冲的输出发送到客户端,停止该页的执行,并引发 System.Web.HttpApplication.EndRequest 事件;

Flush方法,向客户端发送当前所有缓冲的输出;

StatusCode属性,获取或设置返回给客户端的输出的 HTTP 状态代码;

ContentType属性,获取或设置输出流的 HTTP MIME 类型,默认值为“text/html”,它决定了浏览器以何种方式解析服务器端发送过来的数据。

2.3 Server对象

提供用于处理 Web 请求的 Helper 方法,其中比较常用的成员有:

MapPath方法,返回与 Web 服务器上的指定虚拟路径相对应的物理文件路径;

Transfer方法,对于当前请求,终止当前页的执行,并使用指定的页 URL 路径来开始执行一个新页;

UrlEncode/UrlDecode方法,对字符串进行 URL 编码(解码)并返回已编码(解码)的字符串;

2.4 Session对象

提供对会话状态值以及会话级别设置和生存期管理方法的访问,其中比较常用的成员有:

Add方法,向会话状态集合添加一个新项;

Clear()方法,从会话状态集合中移除所有的键和值;

Remove()方法,删除会话状态集合中的项。

---------------------- Windows Phone 7手机开发.Net培训、期待与您交流! ----------------------

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值