iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >ASP.NET的HTTP模块和处理程序对话状态是怎样的
  • 180
分享到

ASP.NET的HTTP模块和处理程序对话状态是怎样的

2023-06-17 13:06:59 180人浏览 安东尼
摘要

这篇文章主要介绍“asp.net的Http模块和处理程序对话状态是怎样的”,在日常操作中,相信很多人在ASP.net的HTTP模块和处理程序对话状态是怎样的问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”ASP

这篇文章主要介绍“asp.netHttp模块和处理程序对话状态是怎样的”,在日常操作中,相信很多人在ASP.net的HTTP模块和处理程序对话状态是怎样的问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”ASP.NET的HTTP模块和处理程序对话状态是怎样的”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

HTTP处理程序中的对话状态

维护对话状态是WEB应用程序执行的最通常的事务。HTTP处理程序也需要访问这些对话状态。但是HTTP处理程序的默认设置是没有激活对话状态的。为了读取和/或写入状态数据,需要HTTP处理程序实现下面的接口之一:

· IRequiresSessionState

· IReadOnlySessionState.

当HTTP处理程序需要读写对话数据的时候,它必须实现IRequiresSessionState接口。如果它只读取对话数据,实现IReadOnlySessionState接口就可以了。

这两个接口都是标记接口,并没有包含任何方法。因此,如果你希望激活NewHandler处理程序的对话状态,要像下面的代码一样声明NewHandler类:

public class NewHandler : IHttpHandler, IRequiresSessionState

HTTP模块

HTTP模块是实现了System.Web.IhttpModule接口的.NET组件。这些组件通过在某些事件中注册自身,把自己插入ASP.NET请求处理管道。当这些事件发生的时候,ASP.NET调用对请求有兴趣的HTTP模块,这样该模块就能处理请求了。

HTTP模块实现了IhttpModule接口的下面一些方法:

方法名称描述
Init这个方法允许HTTP模块向HttpApplication 对象中的事件注册自己的事件处理程序。
Dispose这个方法给予HTTP模块在对象被垃圾收集之前执行清理的机会。

HTTP模块可以向System.Web.HttpApplication对象暴露的下面一些方法注册:

事件名称描述
AcquireRequestState当ASP.NET运行时准备好接收当前HTTP请求的对话状态的时候引发这个事件。
AuthenticateRequest当ASP.NET 运行时准备验证用户身份的时候引发这个事件。
AuthorizeRequest当ASP.NET运行时准备授权用户访问资源的时候引发这个事件。
BeginRequest当ASP.NET运行时接收到新的HTTP请求的时候引发这个事件。
Disposed当ASP.NET完成HTTP请求的处理过程时引发这个事件。
EndRequest把响应内容发送到客户端之前引发这个事件。
Error在处理HTTP请求的过程中出现未处理异常的时候引发这个事件。
PostRequestHandlerExecute在HTTP处理程序结束执行的时候引发这个事件。
PreRequestHandlerExecute在ASP.NET开始执行HTTP请求的处理程序之前引发这个事件。在这个事件之后,ASP.NET 把该请求转发给适当的HTTP处理程序。
PreSendRequestContent在ASP.NET把响应内容发送到客户端之前引发这个事件。这个事件允许我们在内容到达客户端之前改变响应内容。我们可以使用这个事件给页面输出添加用于所有页面的内容。例如通用菜单、头信息或脚信息。
PreSendRequestHeaders在ASP.NET把HTTP响应头信息发送给客户端之前引发这个事件。在头信息到达客户端之前,这个事件允许我们改变它的内容。我们可以使用这个事件在头信息中添加cookie和自定义数据。
ReleaseRequestState当ASP.NET结束所搜有的请求处理程序执行的时候引发这个事件。
ResolveRequestCache我们引发这个事件来决定是否可以使用从输出缓冲返回的内容来结束请求。这依赖于Web应用程序的输出缓冲时怎样设置的。
UpdateRequestCache当ASP.NET完成了当前的HTTP请求的处理,并且输出内容已经准备好添加给输出缓冲的时候,引发这个事件。这依赖于Web应用程序的输出缓冲是如何设置的。

除了这些事件之外,我们还可以使用四个事件。我们可以通过实现Web应用程序的global.asax文件中一些方法来使用这些事件。

这些事件是:

· Application_OnStart

当***个请求到达Web应用程序的时候引发这个事件。

· Application_OnEnd

准备终止应用程序之前引发这个事件。

· Session_OnStart

用户对话的***个请求引发这个事件。

· Session_OnEnd

放弃对话或者对话超期的时候引发这个事件。

到此,关于“ASP.NET的HTTP模块和处理程序对话状态是怎样的”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

--结束END--

本文标题: ASP.NET的HTTP模块和处理程序对话状态是怎样的

本文链接: https://www.lsjlt.com/news/289358.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • ASP.NET的HTTP模块和处理程序对话状态是怎样的
    这篇文章主要介绍“ASP.NET的HTTP模块和处理程序对话状态是怎样的”,在日常操作中,相信很多人在ASP.NET的HTTP模块和处理程序对话状态是怎样的问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”ASP...
    99+
    2023-06-17
  • ASP.NET的HTTP模块和处理程序的模块实现是怎样的
    本篇文章给大家分享的是有关ASP.NET的HTTP模块和处理程序的模块实现是怎样的,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。实现一个提供安全服务的HTTP模块现在我们实现一...
    99+
    2023-06-17
  • ASP.NET的HTTP模块和处理程序之HTTP模块怎么用
    这篇文章给大家分享的是有关ASP.NET的HTTP模块和处理程序之HTTP模块怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。在配置文件中注册HTTP模块当我们建立了HTTP模块并把它复制到Web应用程序的b...
    99+
    2023-06-17
  • ASP.NET的HTTP模块和处理程序怎么建立
    本篇内容主要讲解“ASP.NET的HTTP模块和处理程序怎么建立”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“ASP.NET的HTTP模块和处理程序怎么建立”吧!在Internet时代的开端,客...
    99+
    2023-06-17
  • ASP.NET对请求处理过程的操作是怎样的
    本篇内容介绍了“ASP.NET对请求处理过程的操作是怎样的”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!当请求一个*.aspx文件的时候,这...
    99+
    2023-06-17
  • ASP.NET的请求处理过程是怎样的
    这篇文章主要介绍“ASP.NET的请求处理过程是怎样的”,在日常操作中,相信很多人在ASP.NET的请求处理过程是怎样的问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”ASP.NET的请求处理过程是怎样的”的疑...
    99+
    2023-06-17
  • SAP CRM的状态管理和权限控制的集成是怎样的
    SAP CRM的状态管理和权限控制的集成是怎样的,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。CRM状态管理框架支持以下授权概念。客户可以选择仅特定用户组(具有...
    99+
    2023-06-04
  • LINUX C系统编程与PYTHON中的时间模块对比是怎样的
    LINUX C系统编程与PYTHON中的时间模块对比是怎样的,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。今天看python时间模块time的时候发现和LINUX系统编程中...
    99+
    2023-06-04
  • C++程序运行时异常处理是怎样的
    这篇文章主要介绍“C++程序运行时异常处理是怎样的”,在日常操作中,相信很多人在C++程序运行时异常处理是怎样的问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”C++程序运行时异常处理是怎样的”的疑惑有所帮助!...
    99+
    2023-06-17
  • CSS中z-index属性对层叠顺序的处理是怎样的
    CSS中z-index属性对层叠顺序的处理是怎样的,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。多次在项目中遇到html页面元...
    99+
    2024-04-02
  • 大数据流处理中Flume、Kafka和NiFi的对比是怎样的
    今天就跟大家聊聊有关大数据流处理中Flume、Kafka和NiFi的对比是怎样的,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。我们将简要介绍三种Apache处理工具:Flume、Ka...
    99+
    2023-06-02
  • Python中多线程和多处理的指南是怎样的
    Python中多线程和多处理的指南是怎样的,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。使用Python分析数据,如果使用了正确的数据结构和算法,有时可以大量提高程序的速度。实...
    99+
    2023-06-05
  • 怎样进行python异常处理和面向对象编程的分析
    本篇文章给大家分享的是有关怎样进行python异常处理和面向对象编程的分析,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。    异常处理和面向对象...
    99+
    2023-06-04
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作