欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Asp.net生命周期与Http协议

程序员文章站 2023-03-22 21:27:41
Http协议,底层的东西还是不是特别熟悉,感觉要经过沉淀之后才能理解这些东西吧 1.Asp.net生命周期 Asp.net生命周期: 从发起请求开始,到IIS进行处理的全部过程,然后再到获取结果 当请求一个*.aspx文件的时候,这个请求会被inetinfo.exe进程截获,它判断文件的后缀(asp ......

http协议,底层的东西还是不是特别熟悉,感觉要经过沉淀之后才能理解这些东西吧

1.asp.net生命周期

asp.net生命周期:

从发起请求开始,到iis进行处理的全部过程,然后再到获取结果

当请求一个*.aspx文件的时候,这个请求会被inetinfo.exe进程截获,它判断文件的后缀(aspx)之后,将这个请求转交给aspnet_isapi.dll,aspnet_isapi.dll会通过http管道(http pipeline)将请求发送给aspnet_wp.exe进程,在aspnet_wp.exe进程中通过httpruntime来处理这个请求,处理完毕将结果返回客户端。     inetinfo.exe进程:是www服务的进程,iis服务和aspnet_isapi.dll都寄存在此进程中。     aspnet_isapi.dll:是处理.aspx文件的win32组件。其实iis服务器是只能识别.html文件的,当iis服务器发现被请求的文件是.aspx文件时,iis服务器将其交给aspnet_isapi.dll来处理。     aspnet_wp.exe进程:asp.net框架进程,提供.net运行的托管环境,.net的clr(公共语言运行时)就是寄存在此进程中。

asp.net framework处理一个http request的流程:     httprequest-->inetinfo.exe-->aspnet_isapi.dll-->aspnet_wp.exe-->httpruntime-->httpapplication factory-->httpapplication-->httpmodule-->httphandler factory-->httphandler-->httphandler.processrequest()
asp.net请求处理过程是基于管道模型的,这个管道模型是由多个httpmodule和httphandler组成,asp.net把http请求依次传递给管道中各个httpmodule,最终被httphandler处理,处理完成后,再次经过管道中的http模块,把结果返回给客户端。我们可以在每个httpmodule中都可以干预请求的处理过程。

Asp.net生命周期与Http协议

Asp.net生命周期与Http协议

Asp.net生命周期与Http协议

 

 

2.htpp协议的生命周期

这个感觉要后续继续加深理解之后再进行补充吧,目前就拿别人的思路来解答这个过程

Asp.net生命周期与Http协议

 

1.输入url,浏览器dns解析域名,获取ip

2.三次握手,建立tcp链接

3.向服务端发送http请求

4.服务端处理请求并响应

5.浏览器渲染html

6在渲染的过程中继续加载css,js,图片,音频,视频文件

7 呈现给用户