客户端请求WEB页面的过程

简介: 客户每次请求页面时——通过最初请求或者回送——所发生的事情。     图中显示了有5个主要事件:初始化、加载、预提交、提交、处理我们可以为每个步骤添加代码。

客户每次请求页面时——通过最初请求或者回送——所发生的事情。

图片说明

 

    图中显示了有5个主要事件:初始化、加载、预提交、提交、处理

我们可以为每个步骤添加代码。

1.初始化:

ASP.NET处理器第一次接到页面请求时,首先会触发Init事件。这个事件可以构建页面架构,并准备即将提交的页面控件。OnInit()方法是处理这个事件的默认方法。

Init事件之后,是两个较小的进程。第一,如果存在试图状态,就加载页面。也就是说,ASP.NET处理器会查找隐藏在<input name="__VIEWSTATE">标记中的页面内容所包含的、并被包括在页面请求中的数据。如果找到了这种数据,就对数据进行读取并编码,准备在(重新)生成页面时使用。第二,处理回送数据。在用户触发一个服务器端事件时,Web窗体会触发一个回送,这个回送含有服务器用以进行处理的信息。

2.页面加载:

加载页面时,触发的主要事件就是Load事件。处理Load事件的默认方法是OnLoad事件处理程序;然而,VS.NET通常要在InitializeComponent()方法中添加一行代码,指出Load事件由Page_Load()方法处理的。

        private void InitializeComponent()

        {   

            this.Load += new System.EventHandler(this.Page_Load);

        }

可以向Page_Load()方法添加代码,以控制页面加载时所发生的事件。

3.事件处理:

在这个过程中,ASP.NET处理器要应付一系列被触发并经过处理的事件。如果页面正在被回送,还会包括用户触发的事件。

PreRender事件也是在这个阶段被处理的。处理PreRender事件的默认方法是OnPreRender(),这里要编写代码,完成提交页面的方式的最终改变(这个变化可以保存在回送中,它和下一个步骤中Render()事件处理程序所引起的变化不同)。然后,把这个页面状态保存到即将返回给页面的试图状态中。

4.提交:

在这个过程中,通过生成浏览器必需显示的HTML,获取用以提交将被发送到浏览器的页面代码。通过向Render()事件处理程序添加代码,可以生成更多的最终改变,这些改变能够影响页面的提交方式,因为Render()事件处理程序可以处理Render事件(注意命名约定中的变化:事件处理程序一定不能被命名为OnRender())。

5.处理无用的对象:

最后这个阶段含有用于执行清理操作的代码,清理工作是通过处理不再使用的对象(比如那些已经完成的数据链接)完成的。

 

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/JOHNCOOLS/archive/2006/04/28/695801.aspx

相关文章
|
22天前
|
自然语言处理 Java 数据库连接
掌握JSP页面编程:动态生成Web内容
【4月更文挑战第3天】Java Server Pages (JSP) 是一种用于创建动态Web内容的Java技术,它结合HTML并允许在页面中嵌入Java代码。JSP支持代码片段、表达式语言(EL)和JSTL标签库,简化动态内容生成。当服务器接收到请求时,执行JSP中的Java代码并将结果嵌入HTML返回给客户端。示例展示了如何显示当前日期和时间。JSP可与Servlet、JavaBeans、数据库等结合,用于构建功能丰富的交互式Web应用。
掌握JSP页面编程:动态生成Web内容
|
1月前
|
机器学习/深度学习 人工智能 前端开发
机器学习PAI常见问题之web ui 项目启动后页面打不开如何解决
PAI(平台为智能,Platform for Artificial Intelligence)是阿里云提供的一个全面的人工智能开发平台,旨在为开发者提供机器学习、深度学习等人工智能技术的模型训练、优化和部署服务。以下是PAI平台使用中的一些常见问题及其答案汇总,帮助用户解决在使用过程中遇到的问题。
|
1月前
|
存储 开发框架 JSON
在 Python 中,如何处理 Web 请求和响应?
【2月更文挑战第26天】【2月更文挑战第90篇】在 Python 中,如何处理 Web 请求和响应?
|
2月前
|
存储 网络协议 Linux
《网络是怎么样连接的》读书笔记 - WEB服务端请求和响应(五)
《网络是怎么样连接的》读书笔记 - WEB服务端请求和响应(五)
36 0
|
3月前
|
前端开发 数据库 Python
使用 Python 的 Web 框架(如 Django 或 Flask)来建立后端接口,用于处理用户的请求,从数据库中查找答案并返回给前端界面
【1月更文挑战第13天】使用 Python 的 Web 框架(如 Django 或 Flask)来建立后端接口,用于处理用户的请求,从数据库中查找答案并返回给前端界面
87 7
|
1月前
|
设计模式 前端开发 Shell
Python生成Web页面Web框架
Python生成Web页面Web框架
16 0
|
2月前
|
JavaScript 前端开发 API
「深入探究Web页面生命周期:DOMContentLoaded、load、beforeunload和unload事件」
在 Web 开发中,了解页面生命周期是非常重要的。页面生命周期定义了页面从加载到卸载的整个过程,包括各种事件和阶段。在本文中,我们将详细介绍四个关键事件:DOMContentLoaded、load、beforeunload 和 unload。我们将探讨这些事件的属性、API、应用场景,并提供一些代码示例和参考资料。
|
3月前
Flutter笔记:使用Flutter构建响应式PC客户端/Web页面-案例
Flutter笔记:使用Flutter构建响应式PC客户端/Web页面-案例
58 0
|
3月前
|
前端开发
使用CSS实现网格+渐变背景色的Web页面背景
使用CSS实现网格+渐变背景色的Web页面背景
29 0
|
JavaScript 前端开发 API
【Web API系列教程】3.6 — 实战:处理数据(创建JavaScript客户端)
在本节,你将使用HTML、JavaScript和Knockout.js库为应用程序创建客户端。我们将按如下步骤建立客户端应用: 1, 展示books列表 2, 展示book详细信息 3, 添加一本新书 Knockout.js库使用了模型-视图-视图模型(MVVM)模式: 1, 模型是在业务域(在本例中是books和authors)中数据在服务器端的表现形式。
1031 0