海妖 发表于 2015-1-16 14:26:42

NET网页编程之ASP.NET的HTTP模块和处置程序之对话形态

我认为,可以通过更加简单的首次编译,而增加第二次编译的负担,来提高java的运行效率。只是将java源代码进行简单的等价转换,而不假设编译成某种虚拟机器的目标格式,而由本地编译器针对性的二次编译。<p>HTTP处置程序中的对话形态
保护对话形态是Web使用程序实行的最一般的事件。HTTP处置程序也必要会见这些对话形态。可是HTTP处置程序的默许设置是没有激活对话形态的。为了读取和/或写进形态数据,必要HTTP处置程序完成上面的接口之一:
·IRequiresSessionState
·IReadOnlySessionState.
当HTTP处置程序必要读写对话数据的时分,它必需完成IRequiresSessionState接口。假如它只读取对话数据,完成IReadOnlySessionState接口就能够了。
这两个接口都是标志接口,并没有包括任何办法。因而,假如你但愿激活NewHandler处置程序的对话形态,要像上面的代码一样声明NewHandler类:
<OLclass=dp-xml>publicclassNewHandler: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
保持对话大概对话超期的时分激发这个事务。
<p>捆绑编译器。用户不需要受制于厂家,自己就能将程序在新平台上编译运行。除了牛B轰轰的linux,估计也没有系统捆绑c/c++的编译器,而且许多新平台都无法支持复杂的c/c++编译器在上面直接运行。

小魔女 发表于 2015-1-18 14:40:40

这也就是最近几年来随着各种新的后台技术的诞生,CGI应用在Internet上越来越少的原因。CGI方式不适合大访问量的应用。

不帅 发表于 2015-1-25 18:17:44

HTML:当然这是网页最基本的语言,每一个服务器语言都需要它的支持,要学习,这个肯定是开始,不说了.

admin 发表于 2015-2-9 03:26:01

网页从开始简单的hmtl到复杂的服务语言,走过了10多个年头,各种技术层出不穷,单个的主流技术也在不断翻新的版本,现在分析下各种语言的区别、优势、劣势、开发注意事项!

飘飘悠悠 发表于 2015-2-26 20:29:47

关于ASP.NET功能上,ASP.NET比微软以前的ASP(96年出现)有更强大的library,更好的稳定性。ASP.NET可以使用.NETFramework中所有组件(也就是说.NET能实现的,ASP.NET一样能实现)。

变相怪杰 发表于 2015-3-8 17:33:44

平台无关性是PHP的最大优点,但是在优点的背后,还是有一些小小的缺点的。如果在PHP中不使用ODBC,而用其自带的数据库函数(这样的效率要比使用ODBC高)来连接数据库的话,使用不同的数据库,PHP的函数名不能统一。这样,使得程序的移植变得有些麻烦。不过,作为目前应用最为广泛的一种后台语言,PHP的优点还是异常明显的。

蒙在股里 发表于 2015-3-16 09:28:39

Asp.net:首先来说,Asp.net和Asp没什么关系,看着像是升级版本什么的,其实没什么联系。Asp是脚本编程,用的是ASP语言,而ASP.net用的是C#语言,完全不同的东西。

精灵巫婆 发表于 2015-3-22 22:09:33

ASP(ActiveServerPages)是Microsfot公司1996年11月推出的WEB应用程序开发技术,它既不是一种程序语言,也不是一种开发工具,而是一种技术框架,不须使用微软的产品就能编写它的代码。
页: [1]
查看完整版本: NET网页编程之ASP.NET的HTTP模块和处置程序之对话形态