第二部分
第2章 ASP应用开发环境
2.1 ASP概述
2.1.1 ASP特点
ASP(Active Server Pages,活动服务器网页)是一种运行于服务器端的Web应用程序开发技术,它既不是一种语言,也不是一种开发工具,而是一种服务器端的脚本语言环境。ASP是Microsoft公司1996年年底推出的一种取代CGI(Common Gateway Interface,公共网关接口)运行于服务器端的Web应用程序开发技术,它内含于IIS中。通过ASP我们可以结合HTML网页、ASP指令和ActiveX组件建立动态、交互且高效的Web服务器应用程序。
进行ASP程序设计,必须掌握脚本的编写,脚本是由一系列的脚本命令组成的,如同一般的程序,脚本可以将一个值赋给一个变量,可以命令Web服务器发送一个值到客户浏览器,可以用一系列命令创建一个过程。脚本语言是一种介于HTML和诸如Java、VisualBasic、C++等编程语言之间的一种特殊的语言,但它却不具有后者复杂、严谨的语法和规则。要编写脚本,必须至少要熟悉一门脚本语言,如VBScript。当安装ASP时,系统提供了VBScript和JScript两种脚本语言,而VBScript则被作为系统默认的脚本语言。
ASP属于ActiveX技术中的Server端技术,与常见的在Client端实现动态网页的技术如JavaApplet, ActiveXControl, VBScript, JavaScript等不同,ASP中的命令和Script语句都是由服务器解释执行的。服务器上需要有能解释这种脚本语言的脚本解释器。当ASP程序执行时,脚本程序将一整套命令发送给脚本解释器(即脚本引擎),由脚本解释器进行翻译并将其转换成服务器所能执行的命令。
ASP是基于ActiveX技术的,它支持面向对象及可扩展的ActiveX Server组件。Ac-tiveX技术以COM/DCOM技术为基础,程序员可以用VC++,VB5.0等语言创建特定功能的服务器端组件,扩展ASP的应用功能。
综上所述,ASP具有如下特点。
(1)全嵌入HTML。使用VBScript、JavaScript等简单易懂的Script语言,结合HTML,快速创建完美的网站应用程序。
(2)无须手动编译或链接程序。
(3)面向对象,并可扩展ActiveX Server组件功能。
(4)使用ADO组件存取数据库容易。
(5)可使用任何语言编写自己的ActiveX Server组件。
(6)可使用服务器端的脚本来产生客户端的脚本,与浏览器无关。
(7)ASP源程序代码隐蔽,在客户端仅可看到由ASP输出的动态HTML文件。
由于ASP有很多特点,ASP技术一推出就获得Windows用户的欢迎。近年来经过不断地改进,其功能越来越强大,用ASP创建的成功商业网站在Internet上随处可见。
随着ASP应用的广泛与深入,人们对ASP技术赋予新的含义,认为可以把ASP定义为Application Service Provider(应用服务提供商)的简称。这样,ASP的核心就是服务,传统的计算机应用产品变为服务产品。ASP服务商可以为企业提供网上租赁应用软件、网络设备或网上支持等服务。客户只要将其部分或全部与业务流程相关的应用委托给服务商,就可以在本地实现自己的应用。这种ASP模式从应用服务角度体现了WebService的技术思想。
依托Internet和Web技术,将事务交给ASP服务商处理以获得网络服务,这符合企业的实际应用需求。通过ASP服务商,企业可以在不必投入大量设备、资金、人力等资源的条件下,充分利用公共的Internet通信设施,迅速地在Internet上建立起具有同等竞争力的企业门户及电子商务环境,将企业的内外部信息交流和资源管理、供应链优化等架构在个性化的企业虚拟办公平台上,使企业具有快速响应客户需求变化的手段和能力,以最经济的方式,获得与大型企业同样的竞争优势。ASP模式成为我国中小企业开展电子商务,加快企业信息化的最佳途径之一。
2.1.2 ASP工作原理
ASP文件被存放在Web服务器上有可执行权限的目录下。当客户端的浏览器向Web服务器(IIS/PWS)请求调用ASP文件时将启动ASP, Web服务器响应该HTTP请求,调用ASP引擎,解释被申请的文件。如果浏览器向Web服务器请求的是.HTML文件,那么会直接把文件的内容传给浏览器;如果浏览器向Web服务器请求的是ASP文件,遇到与ActiveX Script兼容的脚本如VBScript、JavaScript时,ASP引擎调用相应的脚本引擎进行解释,在服务器端由动态链接库asp.dll先解释运行,然后生成HTML文本送往客户端浏览器显示。若脚本指令中包含对数据库的访问请求,就通过ODBC与后台数据库进行链接,由数据库访问组件ADO实现对数据库的操作,并将执行结果返回Web服务器端,然后生成符合HTML标准的页面返回客户端浏览器。因而客户端浏览器接收到的是经Web服务器执行以后生成的一个纯粹的HTML文件,可被运行在任何平台上的浏览器执行。ASP工作原理如图2.1.1所示。
由于ASP的脚本程序是在服务器端执行的,通常脚本代码不会被别人窥视,保证了程序代码的安全和知识产权。另外程序执行后,服务器仅仅是将执行的结果返回给客户端浏览器,减轻了网络传输的负担,提高了交互的速度。
图2.1.1 Web工作原理图