ASP

开源公司:微软公司

作品详情

中文名
动态服务器页面
展开
英文缩写
ASP
展开
推出时间
1996年
展开
外文名
Active Server Pages
展开
开发公司
微软公司
展开
软件类型

1发展历程

在Internet风行的早期,浏览器中显示的网页仅是静态的图文组合而已,浏览者可以在网页上阅读信息,但无法进一步地发表意见、查询信息或进行在线购物等商务活动。为此,人们提出了动态网页或交互网页的概念和解决方案。所谓“动态网页”,是指客户端浏览器和Web服务器端可以互动,也就是服务器端可以实时处理浏览器端的请求(Request),然后再将处理的结果作为对浏览器请求的响应(Response)传送给浏览器。

由于Web程序开发十分复杂,以至于要制作一个简单的动态页面也需要编写大量的C代码才能完成。于是Microsoft公司于1996年推出一种Web应用开发技术ASP,用于取代对Web服务器进行可编程扩展的CGI标准。

ASP 1.0作为IIS(Internet Information Server,Internet信息服务器)的附属产品免费发送,不久就在Windows平台上广泛使用。ASP与ADO的结合使开发者很容易地在一个数据库中建立和打开一个记录集。

1998年,微软公司又发布了ASP 2.0。ASP 1,0和ASP 2,0主要区别在于外部组件。有了ASP 2.0和IIS 4.0,就可以建立ASP应用了。

在微软公司开发的Windows 2000操作系统中就开始带上了IIS 5.0及ASP 3.0。虽然Windows已经发展到比较高的版本,但是开发领域中依然百分之百采用Windows 2000 Server。Windows 2000包括三个不同的版本:Windows 2000 Professional,Windows 2000 Server和Windows 2000 Advanced Server。按照默认设置安装Windows 2000 Server,安装时不用作任何改动,这样就可配置好ASP的运行环境。

2主要功能

硬件环境

ASP程序的运行对硬件环境没有特别的要求,通常具备能够满足Windows操作系统运行要求的硬件设备即可。基本内存容量要求为64MB,建议内存容量为128MB或更多。此外,应该有1G以上的硬盘空间用来安装所需的软件。

软件环境

在软件环境方面,因为ASP是Microsoft公司推出的,只有在Microsoft Windows操作系统及其配套的web服务器软件的支持下才能运行。MicrosoR公司的各种wiIldows操作系统都可以作为ASP的运行平台。其中,在wiIIdows 98操作系统下运行的Personal w曲Server,一般简称为PWS,而hltcmeIll:folma缸on SeⅣer,则简称为IIS。

3语言特点

1、用VBScript、JavaScript等简单容易的脚本语言。结合HTML代码,即可快速完成网站的应用程序,实现动态网页技术。

2、ASP文件是包含在HTML代码所组成的文件中的,易于修改和测试,无须编译或链接就可以解释执行。

3、ASP所使用的脚本语言均在Web服务器端执行,服务器上的ASP解释程序会在服务器端执行ASP程序,并将结果以HTML格式传送到客户端浏览器上。

4、ASP提供了一些内置对象,使用这些对象可以使服务器端脚本功能更强。

5、ASP可以使用服务器端ActiveX组件来执行各种各样的任务,例如存取数据库、发现和那个Email或访问文件系统等。

6、由于服务器是将ASP程序执行的结果以HTML格式传回客户端浏览器,因此使用者不会看到ASP所编写的原始程序代码,可防止ASP程序代码被窃取。

4工作原理

ASP中的脚本程序是在服务器端运行的(而不是在客户端运行),传送到浏览器上的web页是在web服务器上生成的。因此,客户端浏览器并没有处理这些脚本,web服务器已经完成了这些脚本的处理,并将标准的HTML页面传输到浏览器。ASP解释器读取并执行所有在<%和%>标签之间的脚本代码,并生成内容。由于只有脚本的执行结果返回到浏览器,因此,用户看不到正在浏览的网页的脚本命令,而只能看到脚本的执行结果。

5语言基础

ASP可以使用两种脚本语言:VBScript和Jscript(所谓的JScript语言就是微软版本的JavaScript语言)。

ASP包含内置对象,最常用的是五大对象、一个集合和一个文件。五大对象分别是Response,Request,Session,Application和Server;一个集合是Cookies;一个文件是GIobal.asa。

ASP提供了内置对象和大量可安装的ActiveX组件。这些对象以及组件都可以用来拓展ASP的功能。在面向对象编程中,对象就是指由当作完整实体的操作和数据组成的变量。在对象中客户可通过由一组方法或相关函数来访问对象的数据。

对象一般有方法、属性、集合和事件。其中,方法决定了可以用这个对象作什么事情;属性可以读取对象状态或者设置对象状态;集合是由很多不同的与对象有关系的键和值的配对组成的。

Response对象

在ASP中,使用Response对象来根据客户端不同的请求输出不同的返回结果。

使用Response.Write方法将输出传送至浏览器端

Write方法是Response对象中最常用的方法之一,它可以把变量的值发送到用户端的当前页面。Write方法的功能粮强大,几乎可以输出所有的对象和数据。

在Write方法中可以嵌入任何HTML标记,只要该标记是合法的,如下例将输出绿色的汉字和一条水平线:

将HTML标记与ASP中的变量恰当的结合使用,可使程序更简洁易读,如下例是根据Request对象获取的数据来创建表格的一行信息:

使用Response.Redirect方法从目前网页导向至其他网页

在普通网页中,可以使用超链接的方式来引导访问者跳转到另一个页面,但这个过程须要访问者单击一个超链接才可以进行。Response对象的Redirect方法则可以自动完成页面间的跳转,而访问者几乎不会感觉出来。

使用Response.End方法结束程序的执行

End方法使服务器停止当前脚本的处理并返回当前结果。如果Response对象的Buffer属性设为True,则End方法立即把缓存中的内容发送到客户端并清除缓存。

因此,若想取消向客户端的所有输出,可以先用Clear方法清除缓存,再用End方法停止脚本的处理。

AddHeader方法用指定的值添加HTML标题。该方法常常向响应添加新的HTTP标题。它并不替代现有的同名标题。一旦标题被添加,将不能删除。其语法结构如下:

为避免命名不明确,标题变量名称中不能包含任何下划线字符(_)。由于HTTP协议要求所有的标题都必须在内容之前发送,所以必须在任何输出(例如由HTML或write方法生成的输出)发送到客户端之前在脚本中调用AddHeader。但当Buffer属性被设置为True时例外。若输出被缓冲,则可以在脚本中的任何地方调用AddHeader方法,只要它在Flush之前执行即可。

Response.CIear方法

Clear方法用于清除缓冲区的所有HTML输出,但它只删除响应正文而不删除响应标题。在服务器上的程序产生错误时,可用clear方法来处理错误情况。

Response对象

Response对象的属性主要包括Buffer、ContentType等。

Buffer属性

在ASP程序中,可以为页面在服务器端设置一个缓存。缓存区是一个存储区,它可以在其释放数据之前容纳该数据一段时间,缓冲区的优点在于它的行为可以进行控制。

设置缓存后,服务器端可减少与客户端连接的次数而提高整体的响应速度,并可在满足某些条件(如脚本处理不正确或用户没有适当的安全证书)时撤销已经处理的结果,而不会出现响应完成一部分就停止的状况。

缓存功能的打开和关闭是通过Response对象的Buffer属性来完成的。若将Buffer属性设为False,则关闭缓存功能,Web服务器在处理页面时会随时返回HTML和脚本结果;若将Buffer属性设为True,则打开缓存功能,Web服务器在处理页面时会将结果暂时存放到缓存中,当全部脚本处理完后,或者遇到End或Flush方法时,才将缓存中的内容发送到浏览器。

Buffer属性的更改必须放在HTML或脚本输出之前。这是因为在任何内容发送到浏览器后,Buffer属性值就不能再更改,否则会引起错误。

ContentType属性

ContentType属性指定响应的HTTP内容类型。其语法结构如下:

ContentType字符串通常被格式化为类型/子类型,其中类型是常规内容范畴,子类为特定内容类型。如果未指定ContentType,默认为text/HTML。

web服务器将某个文件发送到浏览器时,它会将文件的MIME类型告诉浏览器,浏览器会根据文件的MIME类型和扩展名来确定是自己本身就能显示,还是必须调用其他应用程序。

Expires属性

EXpires属性指定了在浏览器上缓冲存储的页距过期还有多少时间。如果用户在某个页过期之前又回到此页,就会显示缓冲区中的版本。其语法结构如下:

时间参数设置网页距过期还有多少分钟。如果将此参数设置为O,可使缓存的页立即过期,这样客户端每次都将从服务器上得到最新的页面。

6技术应用

电子商务

ASP 可以通过Windows提供的COM/DCOM来获取Active X和结构支持。

ASP使用ODBC(Open Database Connectivity,开放数据库互连)技术访问数据库。在具体应用中,一般通过ADO(ActiveX Data Objects,ActiveX数据对象)实现对数据库的操作。使用ADO的connection、command和recordset对象可以完成与数据库连接的建立,SOL语句的执行,查询结果集合的保存、遍历和显示等工作。

7语言评价

使用ASP编写服务器端脚本,可以方便地创建复杂、实用的Web应用程序。

ASP所设计出的是动态主页,可接收用户提交的信息并作出反应,其中的数据可随实际情况而改变,无须人工对网页文件进行更新即可满足应用需要。例如:当在浏览器上填好表单并提交HTTP请求时,可以要求在站点服务器上执行一个表单所设定的应用程序,而不只是一个简单的HTML文件。该应用程序分析表单的输入数据,根据不同的数据内容将相应的执行结果(通常是数据库查寻的结果集)以HTML的格式传送给浏览器。数据库的数据可以随时变化,服务器上执行的应用程序却不必更改,客户端得到的网页信息会始终保持新鲜的魅力。

与使用Visual Basic、C++或Java等编程语言开发Web应用程序相比,ASP是更为灵活快速的创建Web应用程序的方法。除了通过添加脚本为应用程序创建HTML界面之外,还可以建立自己的COM(组件对象模型)组件,并且可将应用程序的商业逻辑封装在可重复使用的模块中,以便在脚本、其他组件或其他应用程序中调用。

8词条图册

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态
案例
在长期的开发中,发现了对于大量的应用,都有一些雷同的功能,比如登录、字典、数据权限、用户-角色-部门等,于是我便有了一个想法,将这些雷同的功能抽取出来封装成一个通用的前后端开发模板,后续的应用可以直接基于该模板进行二次开发,市面上有类似的开源代码(若依,jeecgboot),但是这些代码内容太多,而且作为一个程序员,我有造轮子强迫症,目前还比较简陋,只有最基础的登录+rabc+字典的功能,后续会逐渐增加功能 技术:后端采用传统的java+springboot+mybatis-plus+redis的组合,安全框架是自定义的一个实现了认证+授权+跨域的过滤器;后端是vue3+ts_element-
1470vuejava
这是天虹内部自己负责线上线下会员、收银等数据管理的后台,其中包含有客服模块、商品模块、订单模块、会员模块、营销模块、物流模块、运营模块、收银模块、账号管理模块等内容 技术栈: 分新旧两个仓库,旧仓库使用基于 redux+redux-saga的 Dva.js+webpack 构建,后期因为旧仓库代码更新迭代的太多,技术过旧、难以维护、项目打包体积越来越大、本地运行过慢等原因,将后续新增的模块和需求都写在了新仓库中,新仓库使用内部微前端 toss.js 构建,分为基础模块和其他子模块,基础模块包含路由构建、项目打包、公用组件、公用方法等内容,子模块负责每个二级路由下的所有页面实现等。 整个后台所有
2610react后台管理系统
此h5主要是重构xx公司到家业务中电子小票有关售后申请退货流程的h5项目,内嵌到公司 app 和微信小程序中用的。项目主要使用 vue3.0+vite3+ts+scss 构建。里面的功能主要包含退货商品的选择、退货申请、跳转支付运费、退货审核流程、退货物流的选择和查看等等。 由于项目是内嵌在 IOS、Android和微信小程序三端的,基于安全和权限的考虑,在整个项目中,诸如图片上传、地址选择、物流单号扫一扫等功能,都使用了原生的功能。 与app原生交互,主要使用了 js桥接功能,在 window上挂载了一个 THJSBridge 的对象,app 在这个对象中创建了一个 postMessa
2790vue前端内嵌h5
1、项目介绍:本项目是PC端办公产品,既可以和智能办公本搭配使用,也可以单独使用,主要功能有笔记(类似印象笔记),语言记录转写(办公本记录实时转写),日程,待办事项,云书架(阅读),文件驿站(可以和办公本互相转发文件)等核心功能模块,主要技术栈为electron + vue3 + element-plus + typescript + node.js + nsis。 2、工作内容:在本项目我主要负责产品数据的后台同步,云书架的开发,笔记等核心功能的开发与设计,其中为了本软件可以离线使用,所有数据都会在本地数据库包括一份,主要使用的是使用node.js来同步数据,并保存到本地数据库(lowDB)
1750vue
1.项目介绍:吉祥航空APP主要面对C端旅客,用户使用APP提供机票购买,订单管理,航班动态查询,值机选座,机票改期,升舱,会员中心,积分商城等服务,实现旅客从购买机票到落地全流程服务。 2.技术框架:官方APP采用Hybrid开发模式,H5与原生交互采用JSBridge进行通讯,H5部分使用Vue框架,UI框架使用cubeUI。其中首页及登录注册等用户体验要求较高且版本迭代频率低的使用原生开发,功能复杂且版本更新要求比较高的使用H5进行开发。开发方式使用控制器进行环境区分,为了快速的进行H5开发与调试,所有原生提供的接口在H5都有相应的实现,以保持在浏览器端能正常运行。 3.工作内容:主要负
2150APP小程序android前端ios
当前共4950个项目

评论