iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >ASP.NET的请求处理过程是怎样的
  • 108
分享到

ASP.NET的请求处理过程是怎样的

2023-06-17 12:06:00 108人浏览 薄情痞子
摘要

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

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

ASP.NET请求的处理过程

ASP.NET请求处理过程是基于管道模型的,在模型中ASP.NET把Http请求传递给管道中的所有模块。每个模块都接收http请求并有完全控制权限。模块可以用任何自认为适合的方式来处理请求。一旦请求经过了所有HTTP模块,就最终被HTTP处理程序处理。HTTP处理程序对请求进行一些处理,并且结果将再次经过管道中的HTTP模块:

ASP.NET的请求处理过程是怎样的

请注意在http请求的处理过程中,只能调用一个HTTP处理程序,然而可以调用多个HTTP模块。

Http处理程序

HTTP处理程序是实现了System.WEB.IHttpHandler接口的.NET组件。任何实现了IHttpHandler接口的类都可以用于处理输入的HTTP请求。HTTP处理程序与ISapi扩展有些类似。HTTP处理程序和ISAPI扩展的差别在于在URL中可以使用HTTP处理程序的文件名称直接调用它们,与ISAPI扩展类似。

HTTP处理程序实现了下列方法:

方法名称描述
ProcessRequest这个方法实际上是http处理程序的核心。我们调用这个方法来处理http请求。
IsReusable我们调用这个属性来决定http处理程序的实例是否可以用于处理相同其它类型的请求。HTTP处理程序可以返回true或false来表明它们是否可以重复使用。

你可以使用web.config或者Machine.config文件把这些类映射到http请求上。映射完成以后,当接收到相应请求的时候ASP.NET会实例化http处理程序。我们将解释如何在web.config和/或machine.config文件中定义所有这些细节信息。

ASP.NET还通过IHttpHandlerFactory接口支持http处理程序的扩展。ASP.NET提供了把http请求路由到实现IHttpHandlerFactory接口的类的对象上的能力。此外,ASP.NET还利用了Factory设计模式。这种模式为建立一组相关对象而不提供具体类的功能提供了接口。简单的说,你可以把用于建立依赖传递进来的参数建立的http处理程序对象的类看作是factory(工厂)。我们不用指定需要实例化的特定的http处理程序;http处理程序工厂处理这种事务。这样做的优点在于如果未来实现IHttpHandler接口的对象的实现方法发生了改变,只要接口仍然相同,客户端就不会受到影响。

下面是IHttpHandlerFactory接口中的方法列表:

方法名称描述
GetHandler这个方法负责建立适当的处理程序并把它的指针返回到调用代码(ASP.NET运行时)。这个方法返回的处理程序对象应该实现了IHttpHandler接口。
ReleaseHandler这个方法负责在请求处理完成后释放http处理程序。Factory 实现决定了它的操作。Factory 实现可以是实际摧毁实例,也可以把它放入缓冲池供以后使用。

在配置文件中注册HTTP处理程序和HTTP处理程序工厂

ASP.NET在下面的配置文件中维护自己的配置信息:

· machine.config

· web.config

machine.config文件包含应用于计算机上安装的所有Web应用程序的配置设置信息。

web.config文件对于每个Web应用程序来说是特定的。每个Web应用程序都有自己的web.config文件。Web应用程序的任何子目录也可能包含自己的web.config文件;这使得它们能够覆盖父目录的设置信息。

为了给我们的Web应用程序添加HTTP处理程序,你可以使用<httpHandlers>和<add>节点。实际上,处理程序都带有<add>节点,列举在<httpHandlers>和</httpHandlers>节点之间。下面是添加HTTP处理程序的一个普通的例子:

<httpHandlers>   <add verb="supported http verbs" path="path" type="namespace.classname, assemblyname" />  <httpHandlers>

在上面的XML中,

· Verb属性指定了处理程序支持的HTTP动作。如果某个处理程序支持所有的HTTP动作,请使用“*”,否则使用逗号分隔的列表列出支持的动作。因此如果你的处理程序只支持HTTP GET和POST,那么verb属性就应该是“GET, POST”。

· Path属性指定了需要调用处理程序的路径和文件名(可以包含通配符)。例如,如果你希望自己的处理程序只有在test.xyz文件被请求的时候才被调用,那么path属性就包含“test.xyz”,如果你希望含有.xyz后缀的所有文件都调用处理程序,path属性应该包含“*.xyz”。

· Type属性用名字空间、类名称和部件名称的组合形式指定处理程序或处理程序工厂的实际类型。ASP.NET运行时首先搜索应用程序的bin目录中的部件DLL,接着在全局部件缓冲(GAC)中搜索。

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

--结束END--

本文标题: ASP.NET的请求处理过程是怎样的

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

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

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

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

下载Word文档
猜你喜欢
  • ASP.NET的请求处理过程是怎样的
    这篇文章主要介绍“ASP.NET的请求处理过程是怎样的”,在日常操作中,相信很多人在ASP.NET的请求处理过程是怎样的问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”ASP.NET的请求处理过程是怎样的”的疑...
    99+
    2023-06-17
  • ASP.NET对请求处理过程的操作是怎样的
    本篇内容介绍了“ASP.NET对请求处理过程的操作是怎样的”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!当请求一个*.aspx文件的时候,这...
    99+
    2023-06-17
  • Nginx请求处理流程是怎样的
    这篇文章主要介绍“Nginx请求处理流程是怎样的”,在日常操作中,相信很多人在Nginx请求处理流程是怎样的问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Nginx请求处理流程是怎样的”的疑惑有所帮助!接下来...
    99+
    2023-06-04
  • ASP.NET处理HTTP请求的流程是什么
    这篇文章主要介绍“ASP.NET处理HTTP请求的流程是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“ASP.NET处理HTTP请求的流程是什么”文章能帮助大家解决问题。一、ASP.NET处理管...
    99+
    2023-06-30
  • ASP.NET中怎么利用Routing处理请求
    ASP.NET中怎么利用Routing处理请求,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。ASP.NET Routing是一个通用的组件,它不涉及到任何具体的...
    99+
    2023-06-17
  • ASP.NET处理HTTP请求的流程:IHttpModule、IHttpHandler与管道事件
    一、ASP.NET处理管道 Asp.net处理管道的第一步是创建HttpWorkerRequest对象,它包含于当前请求有关的所有信息。HttpWorkerRequest把请求传递给...
    99+
    2024-04-02
  • springmvc处理请求的流程是什么
    Spring MVC处理请求的流程如下:1. 客户端发送请求到DispatcherServlet,DispatcherServlet...
    99+
    2023-08-18
    springmvc
  • ASP.NET Core中怎么利用 Razor处理Ajax请求
    这篇文章将为大家详细讲解有关ASP.NET Core中怎么利用 Razor处理Ajax请求,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。RazorRazor Pages是ASP.NET Co...
    99+
    2023-06-19
  • 在 ASP.NET Core Web API 中处理Patch请求的方法
    今天小编给大家分享的是在 ASP.NET Core Web API 中处理Patch请求的方法,相信很多人都不太了解,为了让大家更加了解,所以给大家总结了以下内容,一起往下看吧。一定会有所收...
    99+
    2023-07-06
  • Ant Design Pro 5 网络请求和错误处理是怎样的
    本篇文章为大家展示了Ant Design Pro 5 网络请求和错误处理是怎样的,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。Ant Design Pro 5 的网络请求有点复杂,只看文档不阅读源码...
    99+
    2023-06-26
  • JavaScript 错误处理的解决过程是怎样的
    本篇文章为大家展示了JavaScript 错误处理的解决过程是怎样的,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。什么是编程中的错误我们的开发过程中并不总是一帆风顺...
    99+
    2024-04-02
  • Linux内核处理中断的过程是怎样的
    Linux内核处理中断的过程是怎样的,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。中断是现代 CPU 工作方式中重要的部分。例如:当你每次在键盘上按下一个按键后,CPU 会...
    99+
    2023-06-28
  • Tomcat处理请求的线程模型是什么
    小编给大家分享一下Tomcat处理请求的线程模型是什么,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一、前言JAVA后端项目,运行在容器tomcat中,由于现在s...
    99+
    2023-06-29
  • 通过通道处理 HTTP 请求的模式
    从现在开始,我们要努力学习啦!今天我给大家带来《通过通道处理 HTTP 请求的模式》,感兴趣的朋友请继续看下去吧!下文中的内容我们主要会涉及到等等知识点,如果在阅读本文过程中有遇到不清楚的地方,欢迎...
    99+
    2024-04-05
  • ASP.NET的HTTP模块和处理程序对话状态是怎样的
    这篇文章主要介绍“ASP.NET的HTTP模块和处理程序对话状态是怎样的”,在日常操作中,相信很多人在ASP.NET的HTTP模块和处理程序对话状态是怎样的问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”ASP...
    99+
    2023-06-17
  • Twitter服务器的数据请求处理的过程有哪些
    本篇内容主要讲解“Twitter服务器的数据请求处理的过程有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Twitter服务器的数据请求处理的过程有哪些”吧!一、twitter的核心业务tw...
    99+
    2023-06-10
  • ASP.NET的HTTP模块和处理程序的模块实现是怎样的
    本篇文章给大家分享的是有关ASP.NET的HTTP模块和处理程序的模块实现是怎样的,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。实现一个提供安全服务的HTTP模块现在我们实现一...
    99+
    2023-06-17
  • 浏览器请求流程和PHP对请求的处理方法是什么
    这篇“浏览器请求流程和PHP对请求的处理方法是什么”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“浏览器请求流程和PHP对请求...
    99+
    2023-07-05
  • php实现ffmpeg处理视频的过程是怎样的
    本篇文章给大家分享的是有关php实现ffmpeg处理视频的过程是怎样的,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。最近有一个项目需要使用ffmpeg处理视频,这里我写了一个d...
    99+
    2023-06-22
  • SpringMVC post请求的处理
    目录一,SpringMVC解析POST提交的数据–1,需求:解析form表单提交的大量数据–2, 准备html页面–3,准备Student类–4,准备RunApp类–5,准备StuC...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作