ASP.NET基础(一)



http请求过程

http协议特点

Web页面服务端(IIS)处理流程

ASP.NET中常用对象

getpost提交方式

1.http请求过程

 1.用户在浏览器中输入请求地址

 2.浏览器对该地址进行封装成请求报文

 3.通过DNS解析查找域名

 4.连接服务器,并将封装的报文发送到服务器,服务器接受报文并解析,之后再返回给浏览器

 5.浏览器接收服务器返回的内容并解析成htmljavascript等,如果解析的时候需要其他资源,会再次向服务器请求(如家在图片等)

2.http协议特点

 1.http是无状态连接,浏览器不会保持与服务器的连接

 2.http是一种互联网通信规范,基本格式为:

    

 

3.常见的响应码及其意思:

200段是成功;300段需要对请求做进一步的处理;400段表示客户端请求错误;500段是服务器的错误。

1.200     成功

2.302     重定向(请求1跳到2

3.400     请求错误

4.404     未找到请求网页

4.http请求报文头

5.web请求页面(IIS)处理流程

1)浏览器将用户请求的地址封装成报文并发送给服务器。

2)服务器端监听到用户请求(一直运行在内核模式下的http.sys程序监听80端口(IIS6.0版本之后,缓存请求,允许多个进程监听同一端口)

3)Http.sys会查询注册表看是否有进程监听80端口请求,如果有则转向对应的进程,一般为inetinfo.exe(用户模式下,早期的IIS中没有http.sys,请求都由inetinfo.exe监控).

4)Inetinfo.exe中,根据配置信息,判断是请求静态资源还是动态资源,并启动w3wp.exe进程,如果请求静态资源,则问w3wp.exe会从服务器读取静态资源并返回。(http.sys出会缓存,这样再次请求时将省略部分请求步骤)

5)如果请求的是动态资源,则调用aspnet_isapi.dll(寄宿在w3wp.exe),加载CLR.

6)CLR中,创建新的AppDomain(应用程序域),在该程序域下,创建一个实现了IISAPIRunTime(接口)类型的对象—ISAPIRunTime对象,调用该对象的ProcessRequset方法。

7)在该方法中,将请求报文做第一次封装,变成ISAPIWorkerRequest

对象wr.

8)调用HttpRuntime的静态方法ProcessRequest方法,并将wr作为参数传递进去做二次封装,变成HttpContext对象,并在其中创建HttpApplication对象,将httpcontext对象作为参数传递进去。(调用HttpApplicationFactory.GetApplicationInstancecontext)方法(在该方法中,先检查httpapplicationfactory是否被初始化,如果已经初始化,则直接创建httpapplication对象(之前还会检查是否有空闲的httpapplication对象)。如果没有初始化,则先初始化,在其中获取global.asax文件路径,并调用CompileApplication()global.asax进行编译

9)调用httpapplication对象的ProcessRequset方法。在该方法中,将会完成19个事件。其中在第7-8个事件之间创建被请求页面的对象,在第11个和12个事件之间执行刚刚创建的对象的ProcessRequest方法,完成后返回给用户。

6.ASP.NET中常用文件

7.关于getpost提交方式

1.get提交的数据都在url中显示,post在后台提交数据

2.Get方式只能提交少量数据,post可以提交大量数据,且相对安全

3.Get提交方式可以记录访问地址,post方式刷新后弹出提示信息(是否重新发送)

4.context.Request.QueryString["name"]   get提交

context.Request.Form["name"]   post提交

context.Request.Params["name"]   , context.Request["name"]  这两个是通用的

context.Response.End() 立即终止当前程序,其后不执行

context.Response.Redirect(url)  重定向

context.Response.Write(内容)  页面输出内容

8.ASP.NET中常用的几个对象

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

   


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值