前面的章节中已经多次使用过Web应用程序(Web Application)术语,所指的既不是一个真正意义上的Web网站,又不是一个传统的应用程序。换句话说,而是认为它是一些Web网页和用来完成某些任务的其他资源的一个集合。它隐含这样一层意思:有一个预定义的路线贯穿于网页之中,用户可做出选择或提供信息使任务能够完成。 例如,一个在线商店,你为了购买货物,进行反复的观察和选择,浏览一系列网页,收集所需要的信息,支付相应的费用,最后发出定单。也可能是一个“软件升级向导”,指导用户完成下载和安装新软件的过程,或者可能是一个基于Intranet的报价单或销售报告的生成工具。 所有这些不同于“标准”的Web网站,一般的Web站点使用一系列菜单或导航栏以预先未定义的路径漫游该站点。但是一个Web应用程序远不只是受控制的导航器。自由地漫游于一个Web网站时,可以进行无状态的和匿名的访问,但Web应用程序一般不接受。 3.2.1 ASP应用程序的定义 上述内容可以认为是术语“Web应用程序”的一个合理的一般定义,但遗憾的是,在谈论有关“ASP应用”时,仅这些还不够。回答什么是“Web应用”可以是主观的,而回答什么是“ASP应用”则需要从技术上的解释。在ASP中术语“应用程序”有自己特定的含义,在讨论如何实现之前,弄懂这个概念至关重要。 ASP应用程序与两个主要的内容有关: · 全局范围的规定,具有一个全局可访问的变量存储区域。 · 通过COM+与IIS的集成,可更好地管理组件。 下面讨论这些内容。第二个内容涉及到其他ASP对象,其覆盖范围相应广泛。在下一章研究ASP Server对象时,将对这部分内容进行详细地讨论。 1. 提供Web应用程序的全局范围 ASP提供一个Application对象,基本上与前面讨论的Session对象相当。但是,这是在应用程序层而不是在用户层。换句话说,该对象是全局的,不是对单独用户的,而是对应用程序的所有用户,其作用域不限制为单独用户的访问。这与在一个正常的可执行应用程序中的全局(或Public)变量相同。Application对象可用于在全局环境中存储变量和信息(即状态),该应用程序内的任何ASP网页中运行的脚本都可访问这些值,而不管是哪个访问者发出的请求。 |