现在的位置: 首页 > 综合 > 正文

IHTTPModule事件

2013年10月07日 ⁄ 综合 ⁄ 共 1335字 ⁄ 字号 评论关闭
 

 IHTTPModule事件





BeginRequest. 此事件标志着这是一个新请求;每个请求都必须产生该事件。

AuthenticateRequest. 此事件标志着所配置的身份验证机制已经验证了请求。附加到此事件可向筛选器确保请求已通过身份验证。

AuthorizeRequest. 与 AuthenticateRequest 一样,此事件标志着现在请求在处理过程中又前进了一步,并且请求已经得到授权。

ResolveRequestCache. 输出缓存模块使用此事件来简化对已经缓存的请求所进行的处理。

AcquireRequestState. 此事件标志着应该获得各个请求状态。

PreRequestHandlerExecute. 此事件标志着请求处理程序将要执行。这是在调用此请求的 HTTP 处理程序之前您可以参与的最后一个事件。

下一个列表显示了处理请求之后产生的事件。这些事件是按照发生的顺序列出的:

PostRequestHandlerExecute. 此事件标志着 HTTP 处理程序已经完成了对请求的处理。

ReleaseRequestState. 此事件标志着应该存储请求状态,因为应用程序已经完成了对请求的处理。

UpdateRequestCache. 此事件标志着代码处理已完成,可以将文件添加到 ASP.NET 缓存中。

EndRequest. 此事件标志着已完成对请求的所有处理。这是应用程序结束时所调用的最后一个事件。

此外,以下三个请求处理前事件可以按不确定顺序引发:

PreSendRequestHeaders.此事件标志着 HTTP 头将要发送给客户端。因此可以在发送之前添加、删除或修改头信息。

PreSendRequestContent. 此事件标志着内容将要发送给客户端。这为发送之前修改内容提供了一个机会。

Error. 此事件标志着有未处理的异常。

 Filter 改写可在ReleaseRequestState和PreSendRequestHeaders 阶段
context.ReleaseRequestState += new EventHandler(this.CompressContent);
context.PreSendRequestHeaders += new EventHandler(this.CompressContent);

抱歉!评论已关闭.