新ASP动态网页设计实用案例教程 电子教案 第3章 ASP的内置对象课件_第1页
新ASP动态网页设计实用案例教程 电子教案 第3章 ASP的内置对象课件_第2页
新ASP动态网页设计实用案例教程 电子教案 第3章 ASP的内置对象课件_第3页
新ASP动态网页设计实用案例教程 电子教案 第3章 ASP的内置对象课件_第4页
新ASP动态网页设计实用案例教程 电子教案 第3章 ASP的内置对象课件_第5页
已阅读5页,还剩129页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

在线教务辅导网:教材其余课件及动画素材请查阅在线教务辅导网QQ:349134187或者直接输入下面地址:在线教务辅导网:http://www.shangfuwang1第3章ASP的内置对象

3.1ASP内置对象简介

3.2Response对象及其应用

3.3Request对象及其应用

3.4Server对象及其应用

3.5Session对象及其应用

3.6Application对象及其应用3.7ObjectContext对象

3.8Err对象

第3章ASP的内置对象3.1ASP内置对象简介23.1.1HTTP协议简介HTTP(HypertextTransferProtocol,超文本传输协议)是一种非常重要的WWW传输协议,它规定了在网络中传输信息的内容以及客户端浏览器与服务器端交互的方式。它有二种版本,即HTTP1.10,HTTP1.1。

返回3.1.1HTTP协议简介返回3当客户端浏览器从一个网站接收HTTP文件时,就会使用HTTP协议。首先,浏览器会建立一个到网站的连接并发出一个请求,网站在接受请求后将发出一个响应,因此,HTTP协议也称做请求响应协议。

返回当客户端浏览器从一个网站接收HTTP文件时,就会使用43.1.2内置对象概说

对象可以分为外挂对象和内置对象。

在利用内置对象的脚本时,不需要先创建它的一个实例。在整个网站应用中内置对象的所有方法、属性集合都是自动可访问的。

ASP提供了7个内置对象,即Response对象、Request对象、Application对象、Session对象、Server对象、ObjectContext对象和Err对象。

返回3.1.2内置对象概说

对象可以分为外挂对5返回

使用外挂对象,要用到Server.CreateObject方法以建立实例(Instance),有了实例才能使用,详见第4章。

返回使用外挂对象,要用到Server.CreateObj63.2Response对象及其应用

Response对象用于动态响应客户端请求(Request),并将动态生成的响应结果返回到客户端浏览器中。Reponse对象主要是用来向浏览器输出信息的,其功能类似于其他编程语言的输出函数,所不同的是,一般编程语言是在本地机运行,把结果输出到本地的输出设备(如CRT、打印机等)上,而ASP是在服务器端运行,Response把运行结果通过Internet输出到遥远的客户端的浏览器上。返回3.2Response对象及其应用

Respon7

3.2.1Response对象数据集合(1个)

Response对象只有Cookies一个数据集合,而Cookies又有Domain,Expires,HasKeys,Path,

Secure等属性。

其使用语法如下:

Response.Cookies(cookie)[(key)|attribute]=value

返回

3.2.1Response对象数据集合(1个)

8参数cookie用来创建或设置cookie的名称;

参数Key为可选参数,表示这个cookie会以目录的类型加以存储,如果指定key,则cookie就是一个字典,而且该key将被设置为Value,以便在以后的数据接收中使用;

参数Attribute指定cookie自身的有关信息。

返回参数cookie用来创建或设置cookie的名称;

93.2.2Response对象的属性(9个)

1)

Buffer

Buffer属性控制是否使用缓冲页输出,语法如下:

Response.Buffer=Flag

Flag为布尔值。当Flag为FALSE,表示不使用缓冲,服务器在处理脚本的同时将输出发送给客户端;当Flag为TRUE,表示使用缓冲页输出。

返回3.2.2Response对象的属性(9个)

1)

Bu102)

CacheControl

该属性用来设置Web服务器是否将ASP的处理结果暂时放在代理服务器上,如果客户端的浏览器没有设置代理服务器,则这个属性值不起作用。

3)

Charset

Charset属性将字符集名称(如GB2312)附加到Response对象中Content-Type标题的后面,用来设置Web服务器响应给客户端的文件字符编码。

返回2)CacheControl

该属性用来设114)

Expires

用来设置ASP网页保留在浏览器Cache的时间,以分钟计算。Expires属性的设置方法为:

Response.Expires=nn为整数,单位为分钟。

如果设置为Response.Expires=5,则页面每五分钟自动读取一次,即缓冲存储的页面五分钟后过期。如果用户在某个页面过期之前又回到此页,就会显示缓冲区中的页面。如果设置为Response.Expires=0,则可使缓存的页面立即过期。

返回4)

Expires

用来设置ASP网页保留在浏览125)

ExpiresAbsolute

指定网页的过期时间,但与Expires属性不同是,该属性指定缓存于浏览器中的页面的到期时间能确切到具体日期和时间,是一个绝对值。在到期之前,若用户返回到该页,该缓存中的页面就显示。如果未指定时间,该主页在当天午夜到期。如果未指定日期,则该主页在脚本运行当天的指定时间到期。

返回5)

ExpiresAbsolute

指定网136)ContentType

ContentType属性用来指定响应的HTTP内容类型。

语法如下:

Response.ContentType=内容类型

一般来说,ContentType都是以“类型/子类型”的字符串来表示的,常用的有Text/Html、Image/Gif

、Application/Msword等,默认为Text/Html形式。

返回6)ContentType

ContentType属性用来指147)IsClientConnected

IsClientConnected属性是只读属性,用来判断客户端是否能与服务器相连。

8)Status

Status属性用来检查Web服务器返回给浏览器的状态,它的响应值即“状态描述字符串”,它是一个代码加上简短的说明。

返回7)IsClientConnected

IsClientC159)PICS

PICS属性用来设置PICS标签,并把响应添加到标头(ResponseHeader)。PICS(ThePlatFormforInternetContentSelection)是一个负责定义互联网络等级及登记数据的W3C团体。

返回9)PICS

PICS属性用来设置PICS163.2.3Response对象的方法(8个)

1)Write方法:可以向浏览器输出动态信息。

是Response方法中最常用的方法。该方法不仅可以将HTML语句写入网页,而且可以将VBScript脚本语句写入网页、控件和对象。使用语法为:

Response.Write任何数据类型

2)Redirect方法

其作用是重新定向网址。在运行ASP程序时,当遇到“Response.Redirect”语句时,页面将自动指向“Response.Redirect”后面的URL。

返回3.2.3Response对象的方法(8个)

1)Wr173)Clear方法(要求Response.Buffer=TRUE)

删除缓冲区中的所有HTML输出。使用语法为:Response.Clear

4)Flush方法

(要求Response.Buffer=TRUE)

Response.Flush方法可以立即发送缓冲区中的数据。

使用语法为:Response.Flush

5)End方法(不必要求Response.Buffer=TRUE)

使Web服务器停止处理脚本并返回当前结果,文件中剩余的内容将不被处理。

使用语法为:Response.End

返回3)Clear方法(要求Response.Buffer=T186)BinaryWrite方法

7)AppendToLog方法

用来添加一段文字在服务器的日志文件(后缀为log)中,以便追踪及分析、使用记录。

8)AddHeader方法

用来设置HTML文件的标题(Head)。

使用语法为:Response.AddHeaderName,Value

返回6)BinaryWrite方法

7)AppendToLo19

3.3Request对象及其应用

Request对象与Response对象恰恰相反,前者是从客户端浏览器提取数据。Request对象通常接收来自客户端的相关信息,如浏览器的种类、表头信息、表单参数及Cookies等等。利用Request对象可以在服务器端获得客户端的信息。

从浏览器传递信息到服务器有GET和POST等二种方法。GET方法传递过来的信息保存在QueryString集合中,POST方法传递过来的信息保存在Form集合。

返回3.3Request对象及其应用

Req203.3.1Request对象数据集合(5个)1)QueryString用于接收通过参数传来的数据。QueryString集合获取URL的问号后面的文本传递给Web服务器的值。通过使用GET方法或手工将表单的值添加到URL,表单的值可以被附加在请求的URL之后

返回3.3.1Request对象数据集合(5个)返回212)Form集合Form集合接收通过使用POST方法的表单发送到HTTP请求正文中的表单元素的值。当使用GET方法去向Web服务器传递长而复杂的表单值时,将可能丢失信息。大多数的Web服务器倾向于严格控制URL查询字符串的长度,以便达到用GET方法传送的冗长的表单值被截断。如果需要从表单发送大量信息到Web服务器,就必须使用POST方法。

2)Form集合22返回3)Cookies集合

Request.cookies正好与Response.cookies一唱一和,Response.cookies在客户端写入cookies,而Request.cookies则读取这个cookies。

返回3)Cookies集合

Request.cookies234)ClientCertificate集合

从Web浏览器发布请求中获取验证字段(由X.509标准指定),用来取得浏览器的身份认证。

5)ServerVariables集合

在浏览器中浏览网页时,使用的传输协议是HTTP,在HTTP的标题文件中会记录一些客户端的信息,如客户的IP地址等等,有时服务器端需要根据不同的客户端信息作出不同的反应,这时候就需要用ServerVariables集合获取所需信息。

返回4)ClientCertificate集合

243.3.2Request对象属性(1个)

TotalBytes属性(唯一)

Request对象只提供一个TotalBytes属性,这是一个只读的属性,表示从客户端所接收数据的字节长度。其语法如下:

字节长度=Request.TotalBytes

返回3.3.2Request对象属性(1个)

TotalByt253.3.3.Request对象的方法(1个)

BinaryRead属性(唯一)

Requst对象仅提供BinaryRead方法。BinaryRead方法是以二进制方式来读取客户端使用POST传送方法所传递的数据。

返回3.3.3.Request对象的方法(1个)

Binary263.4Server对象及其应用

Sever对象提供对服务器上的方法和属性访问,其中大多数方法和属性是为实用程序提供服务的。

语法如下:

Server.Property|Method

其中Property表示Server对象属性,Method表示Server对象的方法。

Sever对象在ASP中是一个很有重要的对象,许多高级功能都是由它完成的,例如,经常使用Sever对象的CreateObject方法创建ActiveX组件。详见第4章。

Server对象没有数据集合,也没有事件。

返回3.4Server对象及其应用

Sever27返回3.4.1Server对象的属性(1个)

Sever只有一个SciptTimeout属性,该属性用于设置一个ASP脚本所允许的最长执行时间。如果在指定的时间内脚本没有执行完毕,系统将停止其执行,并且显示超时错误。

语法如下:

Server.Scripttimeout=Num

返回3.4.1Server对象的属性(1个)

S28返回其中Num以秒为单位,系统的默认值为90秒,可以在IIS中重新设定。90秒的时间对于一般的应用足够了,需注意用户设置时间应该大于系统的默认时间,否则用户的设定将不起作用。此外,时间的设置必须在ASP脚本之前,否则不起任何效果。

返回其中Num以秒为单位,系统的默认值为90秒,可以在IIS293.4.2Server对象的方法(7个)

1)

CreateObject

CreateObject是ASP中最为实用,也是功能最为强大的方法。它用于创建已经注册到服务器上的ActiveX组件实例。这是一个非常重要的特性,因为通过使用ActiveX组件能够很容易地扩展ASP的能力,正是因为使用了ActiveX组件,一些至关重要的功能才能得以实现,。ActiveX组件的使用才使得ASP具有了强大的生命力。

语法:Server.CreateObject(ProgID)

参数:只有一个参数,即ProgID—指定要创建的对象的类型。

返回3.4.2Server对象的方法(7个)

1)

Crea30默认情况下,由CreateObject方法创建的对象具有页作用域。这就是说,在当前ASP页处理完成之后,服务器将自动破坏这些对象。要创建有会话或应用程序作用域的对象,可以使用<Object>标识并设置Session或Application的Scope属性,也可以在对话及应用程序变量中存储该对象。

返回默认情况下,由CreateObject方法创建的对象具有页作311)MapPath

MapPath方法能把相对或虚拟路径映射成物理路径。

语法:Server.MapPath(Path)

参数:只有一个参数,即Path——要被转换的相对或虚拟路径。

返回1)MapPath

MapPath方法能把相对或虚拟路径映射32

3)

GetLastError

返回一个ASPError对象的实例,该实例描述最近发生的错误。

这是ASP3.0新增的功能。

4)

Execute

这是ASP3.0新增的功能,它让你可以在一个ASP文件中执行另一个ASP文件,执行完毕回到原来的ASP文件(仿佛是子程序调用哟!)语法如下:

Server.Execute"asp文件"

返回

3)GetLastError

返回一个ASPError对335)

Transfer

这也是ASP3.0新增的功能,它让你可以在一个ASP文件中执行另一个ASP文件,执行完毕不回到原来的ASP文件(这是与Execute的区别)。

语法如下:

Server.Transfer"asp文件"

返回5)

Transfer

这也是ASP3.0新增的346)HTMLEncode

HTMLEncode方法是对指定的字符串应用HTML编码。语法如下:

Server.HtmlEncode(String)

其中String指定要编码的字符串,它应当是HTML标记才有意义。当从服务器端向浏览器输出HTML标记时,浏览器就将其解释为HTML标记。

返回6)HTMLEncode

HTMLEncode方法是对指定357)URLEncode

URLEncode方法将指定的字符串进行URL编码,语法如下:

Server.URLEncode(Str)

其中Str指定要编码的字符串。返回7)URLEncode

URLEncode方法将指定的字符串363.5Session对象及其应用

由于HTTP是一种无状态的协议,因此无法得知用户的浏览状态。在ASP中,是通过Session对象记录用户的相关信息,用来作为用户再次对服务器访问时作确认。

当用户请求来自应用程序的Web页时,如果该用户还没有会话,则Web服务器将自动创建一个Session对象。当会话过期或被放弃后,服务器将终止该会话。当用户在应用程序的Web页之间跳转时,存储在Session对象中的变量将不会丢失,而是在整个用户会话中一直存在下去。

返回3.5Session对象及其应用

由于HTT37Session对象的创建和使用可弥补HTTP协议的局限,请注意HTTP协议的工作方式是:一用户发出请求,服务器端作出响应,这种用户端和服务器端之间的联系是离散的,在HTTP协议中没有什么方法能够允许服务端来跟踪用户请求。在服务端完成响应用户请求后,服务器端不能持续与该浏览器保持连接。

返回Session对象的创建和使用可弥补HTTP协议的局38使用Session对象前,必须确认浏览器的Cookies功能已启用(默认设置)。如果以前更改过默认设置,Cookies功能可以通过浏览器的设置来开启。

返回使用Session对象前,必须确认浏览器的Cookie393.5.1Session对象的数据集合(2个)

1)

Contents

Contents集合包括所有未使用<OBJECT>标识而为该会话建立的项目。此集合可用于确定指定会话项的值或遍历集合,并检索出会话中所有项的列表。

语法:Session.Contents(Key)

参数:只有一个参数,即Key—要获取的属性的名称。

返回3.5.1Session对象的数据集合(2个)

1)

Co40返回“Global.asa”文件与应用程序

“Global.asa”是—个可选文件,在这个文件中,可以定义事件脚本和使用Session和Application对象。“Global.asa”文件的内容不能向用户显示,但是它存储的信息可应用于整个应用程序。这个文件必须命名为“Global.asa”,并且存储在应用程序的启动点的目录下面,一个应用程序只能有一个“Global.asa”文件。

“Global.asa”文件只能包含以下内容:Application事件;Session事件;

<OBJECT>的声明;类库的声明。

返回“Global.asa”文件与应用程序

“41返回2)StaticObjects

它与Contents的概念和用法大致相同,不同在于,StaticObjects只返回由Global.asa文件中<Object>所建立的对象变量。

语法如下:

Session.StaticObjects(变量名称)

返回2)StaticObjects

它与Con42返回3.5.2Session对象的属性

1)

CodePage

它是一个字符集代码,当ASP处理网页内容时,会根据这个代码将网页的字符转为自动识别(UNICODE)。

语法:Session.CodePage=代码

或者查看当前值:<%=Session.CodePage%>

返回3.5.2Session对象的属性

1)

CodePa432)LCID

它代表一个国家或地区的相关设置,包括事件格式及货币显示。

语法:Session.LCID=代码

或者查看当前值:<%=Session.LCID%>

返回2)LCID

它代表一个国家或地区的相关设置,包括事件格式44返回3)SessionID

ASP给每个用户会话分配了唯一的识别标志。用户会话首次被创建时,其SessionID就产生了,并一直随用户在网站上保留着。不同用户获得同—个页面时会显示不同的ID,但同一个用户即使多次获得此页面,每次也将显示同样的ID。

返回3)SessionID

ASP给每个用户454)Timeout

Session对象在服务器上保留是有时间限制的,缺省值为20分钟。可以通过设置Session对象的TimeOut属性来改变超时时间,这个时间是以分为单位的。

语法:Session.TimeOut[=Time]

参数:只有一个参数,即Time,表示Session的过期时间,以分为单位。

返回4)Timeout

Session对象在服463.5.3Session对象的方法(1个)

Abandon(唯一)

对于一个Session来说,无论用户怎样进行主页间的切换,都会只有一个SessionID,但是可以使用“Session.Abandon”开辟一个新的Session,对于服务器端来说,是两个不同的Session,SessionID也会变化,其中前面的已经关闭,后面的仍然保持。

返回3.5.3Session对象的方法(1个)

Abandon47返回3.5.4Session对象的事件(2个)

和其他对象不同的是,Session对象中有两种事件。一种是Session_OnStart事件,当一个Session开始时被触发;另一种是Session_OnEnd事件,当一个Session结束时被触发。在一个脚本中可以和其中一个并且只能和其中一个事件关联。

返回3.5.4Session对象的事件(2个)

481)

Session_OnStart

“Global.asa”包括四个脚本程序,它们只能根据Session_OnStart、Session_OnEnd、Application_OnStart、Application_OnEnd触发。只需要在“Global.asa”中添加一些希望运行的脚本程序,那么只要Session对象一创建,这些脚本程序就会自动运行。

返回1)

Session_OnStart

“Glob492)

Session_OnEnd

Session_OnEnd事件将在会话被放弃或超时发生,用法类似于Session_OnStart事件。

注意:在Session_OnEnd事件中不能使用MapPath方法。

Session_OnStart、Session_OnEnd以及下文的Application_OnStart、Application_OnEnd都只能以子程序的形式存储在Global.asa文件中。不能在普通脚本中定义。

返回2)

Session_OnEnd

Session503.6Application对象及其应用

Application对象没有属性。Application对象和Session对象有很多相似之处,它们的功能都是用于在不同的ASP之间共享信息。最大的不同在于其应用的范围:Application变量也可以被多个用户共享,从一个用户接受到的Application变量可以传递给另外的用户。

返回3.6Application对象及其应用

App51Application对象是对所有用户,Session对象是对单一用户。和Session不同的还有,Application变量不需要Cookies。网站不需要利用Application变量来跟踪用户进程。可以适应任何浏览器。

由于Application变量对于多用户是共享的,因此与Session变量有着本质的区别。

返回Application对象是对所有用户,Ses52返回3.6.1Application对象的集合(2个)

1)

Contents

该集合包括了Application对象的所有变量,但不包括由<Object>所创建的对象变量。

语法:Application.Contents(变量名)

2)StaticObjects

该集合与Contents不同,它只包括由<Object>所创建的Application对象变量。

返回3.6.1Application对象的集合(2个)

1533.6.2Application对象的方法(2个)

Application对象有两个方法:Lock方法和Unlock方法,它们都用于处理多个用户对存储在Application对象中的数据进行写入的问题。这两种方法通常是一起使用的。

返回3.6.2Application对象的方法(2个)

541)Lock

Lock方法阻止其他客户修改存储在Application对象中的变量,以确保在同—时刻仅有一个客户可修改和存取Application变量。

2)Unlock

Unlock方法与Lock方法相反,允许其他客户修改Application对象的属性。Unlock方法可解除对象的锁定,使得下一个客户端能够增加Application的值。

返回1)Lock

Lock方法阻止其他客户修改存储553.6.3Application对象的事件(2个)

Application_OnStart和Application_OnEnd事件同Session_OnStart和Session_OnEnd事件的触发动作都必须以SUB过程的形式编码在一个文件即“Global.asa”文件中。

对Application事件和Session事件有一样限制,不能使用HTML标志,不能进行任何输出,不能在“Global.asa”文件之外将语句写成子程序的形式或者其他形式。

返回3.6.3Application对象的事件(2个)

561)Application_OnStart

第一个请求Application对象的页面被调用时触发Application_OnStart事件。一个Application对象的OnStart事件是在Session_OnStart事件之前被触发的。

2)Application_OnEnd

Application_OnEnd事件只有在服务器被关闭或者该Application应用程序被卸载时才会触发。

返回1)Application_OnStart

第57返回实用案例3VBScript编程基本技巧

Ⅰ过程命名的技巧

Ⅱ表单控件的操作

返回实用案例3VBScript编程基本技巧

Ⅰ过程命583.7ObjectContext对象

该对象没有数据集合,也没有属性。ObjectContext对象是一个以组件为主的事务处理系统,可以保证事务的成功完成。使用ObjectContext对象,就允许程序在网页中直接配合MicrosoftTransactionServer(MTS)使用,从而可以管理或开发高效率的Web服务器应用程序。

返回3.7ObjectContext对象

该对象没有593.7.1ObjectContext对象的方法(2个)

1)

SetAbort

该方法用来中止目前由ASP所产生的交易,并将先前所作处理的交易回归到原来的状态。该方法与onTransactionAbort事件相关联。

语法:ObjectContext.setAbort

返回3.7.1ObjectContext对象的方法(2个)

1602)setComplete

该方法用来完成交易。

语法:ObjectContext.SetComplete

返回2)setComplete

该方法用来完成交易。

语法:Ob613.7.2ObjectContext对象的事件(2个)

1)

onTransactionAbort

该事件用来处理交易不完成(ObjectContex.setAbort)时所该执行的程序。它必须以子程序的形态存在,语法如下:

SubonTransactionAbort

代码区域

EndSub

返回3.7.2ObjectContext对象的事件(2个)

162返回2)

onTransactionCommit

该事件用来处理交易完成(ObjectContex.SetComplete)时所该执行的程序。它必须以子程序的形态存在,语法如下:

SubonTransactionCommit

代码区域

EndSub

返回2)onTransactionCommit

63方法和事件之间存在着以下默认关联:

(1)如果使用setAbort方法,就会自动发生onTransactionAbort事件;

(2)如果使用setComplete方法,就会自动发生onTransactionCommit事件。

返回方法和事件之间存在着以下默认关联:

(1)如果使用setA643.8Err对象

错误处理是指发生错误时,在代码中进行某些处理或仅捕获该错误而不进行处理。错误发生的原因有许多种:当程序正在使用的一些服务程序没有正常安装,这时就会发生错误;当程序代码中使用了不正确的语法也会有错误发生;当程序代码中出现了系统不知道如何处理的情况时也会发生错误。

返回3.8Err对象

错误处理是指发生错误时,在65

Err对象是用来判断发生什么错误。该对象提供了一系列的属性和方法,根据这些属性和方法就可以得到各种错误信息。

返回Err对象是用来判断发生什么错误。该对象提供了一系列66Err对象的属性

1)Number

它返回一个错误代号,其值大于0,如果Err.Number=0表示无错误。

2)Description

它对产生的错误进行简要的描述,代表着错误类型。

3)Source

该属性用来记录造成系统发生错误或警告的来源。

返回Err对象的属性

1)Number

它返回一个错67在线教务辅导网:教材其余课件及动画素材请查阅在线教务辅导网QQ:349134187或者直接输入下面地址:在线教务辅导网:http://www.shangfuwang68第3章ASP的内置对象

3.1ASP内置对象简介

3.2Response对象及其应用

3.3Request对象及其应用

3.4Server对象及其应用

3.5Session对象及其应用

3.6Application对象及其应用3.7ObjectContext对象

3.8Err对象

第3章ASP的内置对象3.1ASP内置对象简介693.1.1HTTP协议简介HTTP(HypertextTransferProtocol,超文本传输协议)是一种非常重要的WWW传输协议,它规定了在网络中传输信息的内容以及客户端浏览器与服务器端交互的方式。它有二种版本,即HTTP1.10,HTTP1.1。

返回3.1.1HTTP协议简介返回70当客户端浏览器从一个网站接收HTTP文件时,就会使用HTTP协议。首先,浏览器会建立一个到网站的连接并发出一个请求,网站在接受请求后将发出一个响应,因此,HTTP协议也称做请求响应协议。

返回当客户端浏览器从一个网站接收HTTP文件时,就会使用713.1.2内置对象概说

对象可以分为外挂对象和内置对象。

在利用内置对象的脚本时,不需要先创建它的一个实例。在整个网站应用中内置对象的所有方法、属性集合都是自动可访问的。

ASP提供了7个内置对象,即Response对象、Request对象、Application对象、Session对象、Server对象、ObjectContext对象和Err对象。

返回3.1.2内置对象概说

对象可以分为外挂对72返回

使用外挂对象,要用到Server.CreateObject方法以建立实例(Instance),有了实例才能使用,详见第4章。

返回使用外挂对象,要用到Server.CreateObj733.2Response对象及其应用

Response对象用于动态响应客户端请求(Request),并将动态生成的响应结果返回到客户端浏览器中。Reponse对象主要是用来向浏览器输出信息的,其功能类似于其他编程语言的输出函数,所不同的是,一般编程语言是在本地机运行,把结果输出到本地的输出设备(如CRT、打印机等)上,而ASP是在服务器端运行,Response把运行结果通过Internet输出到遥远的客户端的浏览器上。返回3.2Response对象及其应用

Respon74

3.2.1Response对象数据集合(1个)

Response对象只有Cookies一个数据集合,而Cookies又有Domain,Expires,HasKeys,Path,

Secure等属性。

其使用语法如下:

Response.Cookies(cookie)[(key)|attribute]=value

返回

3.2.1Response对象数据集合(1个)

75参数cookie用来创建或设置cookie的名称;

参数Key为可选参数,表示这个cookie会以目录的类型加以存储,如果指定key,则cookie就是一个字典,而且该key将被设置为Value,以便在以后的数据接收中使用;

参数Attribute指定cookie自身的有关信息。

返回参数cookie用来创建或设置cookie的名称;

763.2.2Response对象的属性(9个)

1)

Buffer

Buffer属性控制是否使用缓冲页输出,语法如下:

Response.Buffer=Flag

Flag为布尔值。当Flag为FALSE,表示不使用缓冲,服务器在处理脚本的同时将输出发送给客户端;当Flag为TRUE,表示使用缓冲页输出。

返回3.2.2Response对象的属性(9个)

1)

Bu772)

CacheControl

该属性用来设置Web服务器是否将ASP的处理结果暂时放在代理服务器上,如果客户端的浏览器没有设置代理服务器,则这个属性值不起作用。

3)

Charset

Charset属性将字符集名称(如GB2312)附加到Response对象中Content-Type标题的后面,用来设置Web服务器响应给客户端的文件字符编码。

返回2)CacheControl

该属性用来设784)

Expires

用来设置ASP网页保留在浏览器Cache的时间,以分钟计算。Expires属性的设置方法为:

Response.Expires=nn为整数,单位为分钟。

如果设置为Response.Expires=5,则页面每五分钟自动读取一次,即缓冲存储的页面五分钟后过期。如果用户在某个页面过期之前又回到此页,就会显示缓冲区中的页面。如果设置为Response.Expires=0,则可使缓存的页面立即过期。

返回4)

Expires

用来设置ASP网页保留在浏览795)

ExpiresAbsolute

指定网页的过期时间,但与Expires属性不同是,该属性指定缓存于浏览器中的页面的到期时间能确切到具体日期和时间,是一个绝对值。在到期之前,若用户返回到该页,该缓存中的页面就显示。如果未指定时间,该主页在当天午夜到期。如果未指定日期,则该主页在脚本运行当天的指定时间到期。

返回5)

ExpiresAbsolute

指定网806)ContentType

ContentType属性用来指定响应的HTTP内容类型。

语法如下:

Response.ContentType=内容类型

一般来说,ContentType都是以“类型/子类型”的字符串来表示的,常用的有Text/Html、Image/Gif

、Application/Msword等,默认为Text/Html形式。

返回6)ContentType

ContentType属性用来指817)IsClientConnected

IsClientConnected属性是只读属性,用来判断客户端是否能与服务器相连。

8)Status

Status属性用来检查Web服务器返回给浏览器的状态,它的响应值即“状态描述字符串”,它是一个代码加上简短的说明。

返回7)IsClientConnected

IsClientC829)PICS

PICS属性用来设置PICS标签,并把响应添加到标头(ResponseHeader)。PICS(ThePlatFormforInternetContentSelection)是一个负责定义互联网络等级及登记数据的W3C团体。

返回9)PICS

PICS属性用来设置PICS833.2.3Response对象的方法(8个)

1)Write方法:可以向浏览器输出动态信息。

是Response方法中最常用的方法。该方法不仅可以将HTML语句写入网页,而且可以将VBScript脚本语句写入网页、控件和对象。使用语法为:

Response.Write任何数据类型

2)Redirect方法

其作用是重新定向网址。在运行ASP程序时,当遇到“Response.Redirect”语句时,页面将自动指向“Response.Redirect”后面的URL。

返回3.2.3Response对象的方法(8个)

1)Wr843)Clear方法(要求Response.Buffer=TRUE)

删除缓冲区中的所有HTML输出。使用语法为:Response.Clear

4)Flush方法

(要求Response.Buffer=TRUE)

Response.Flush方法可以立即发送缓冲区中的数据。

使用语法为:Response.Flush

5)End方法(不必要求Response.Buffer=TRUE)

使Web服务器停止处理脚本并返回当前结果,文件中剩余的内容将不被处理。

使用语法为:Response.End

返回3)Clear方法(要求Response.Buffer=T856)BinaryWrite方法

7)AppendToLog方法

用来添加一段文字在服务器的日志文件(后缀为log)中,以便追踪及分析、使用记录。

8)AddHeader方法

用来设置HTML文件的标题(Head)。

使用语法为:Response.AddHeaderName,Value

返回6)BinaryWrite方法

7)AppendToLo86

3.3Request对象及其应用

Request对象与Response对象恰恰相反,前者是从客户端浏览器提取数据。Request对象通常接收来自客户端的相关信息,如浏览器的种类、表头信息、表单参数及Cookies等等。利用Request对象可以在服务器端获得客户端的信息。

从浏览器传递信息到服务器有GET和POST等二种方法。GET方法传递过来的信息保存在QueryString集合中,POST方法传递过来的信息保存在Form集合。

返回3.3Request对象及其应用

Req873.3.1Request对象数据集合(5个)1)QueryString用于接收通过参数传来的数据。QueryString集合获取URL的问号后面的文本传递给Web服务器的值。通过使用GET方法或手工将表单的值添加到URL,表单的值可以被附加在请求的URL之后

返回3.3.1Request对象数据集合(5个)返回882)Form集合Form集合接收通过使用POST方法的表单发送到HTTP请求正文中的表单元素的值。当使用GET方法去向Web服务器传递长而复杂的表单值时,将可能丢失信息。大多数的Web服务器倾向于严格控制URL查询字符串的长度,以便达到用GET方法传送的冗长的表单值被截断。如果需要从表单发送大量信息到Web服务器,就必须使用POST方法。

2)Form集合89返回3)Cookies集合

Request.cookies正好与Response.cookies一唱一和,Response.cookies在客户端写入cookies,而Request.cookies则读取这个cookies。

返回3)Cookies集合

Request.cookies904)ClientCertificate集合

从Web浏览器发布请求中获取验证字段(由X.509标准指定),用来取得浏览器的身份认证。

5)ServerVariables集合

在浏览器中浏览网页时,使用的传输协议是HTTP,在HTTP的标题文件中会记录一些客户端的信息,如客户的IP地址等等,有时服务器端需要根据不同的客户端信息作出不同的反应,这时候就需要用ServerVariables集合获取所需信息。

返回4)ClientCertificate集合

913.3.2Request对象属性(1个)

TotalBytes属性(唯一)

Request对象只提供一个TotalBytes属性,这是一个只读的属性,表示从客户端所接收数据的字节长度。其语法如下:

字节长度=Request.TotalBytes

返回3.3.2Request对象属性(1个)

TotalByt923.3.3.Request对象的方法(1个)

BinaryRead属性(唯一)

Requst对象仅提供BinaryRead方法。BinaryRead方法是以二进制方式来读取客户端使用POST传送方法所传递的数据。

返回3.3.3.Request对象的方法(1个)

Binary933.4Server对象及其应用

Sever对象提供对服务器上的方法和属性访问,其中大多数方法和属性是为实用程序提供服务的。

语法如下:

Server.Property|Method

其中Property表示Server对象属性,Method表示Server对象的方法。

Sever对象在ASP中是一个很有重要的对象,许多高级功能都是由它完成的,例如,经常使用Sever对象的CreateObject方法创建ActiveX组件。详见第4章。

Server对象没有数据集合,也没有事件。

返回3.4Server对象及其应用

Sever94返回3.4.1Server对象的属性(1个)

Sever只有一个SciptTimeout属性,该属性用于设置一个ASP脚本所允许的最长执行时间。如果在指定的时间内脚本没有执行完毕,系统将停止其执行,并且显示超时错误。

语法如下:

Server.Scripttimeout=Num

返回3.4.1Server对象的属性(1个)

S95返回其中Num以秒为单位,系统的默认值为90秒,可以在IIS中重新设定。90秒的时间对于一般的应用足够了,需注意用户设置时间应该大于系统的默认时间,否则用户的设定将不起作用。此外,时间的设置必须在ASP脚本之前,否则不起任何效果。

返回其中Num以秒为单位,系统的默认值为90秒,可以在IIS963.4.2Server对象的方法(7个)

1)

CreateObject

CreateObject是ASP中最为实用,也是功能最为强大的方法。它用于创建已经注册到服务器上的ActiveX组件实例。这是一个非常重要的特性,因为通过使用ActiveX组件能够很容易地扩展ASP的能力,正是因为使用了ActiveX组件,一些至关重要的功能才能得以实现,。ActiveX组件的使用才使得ASP具有了强大的生命力。

语法:Server.CreateObject(ProgID)

参数:只有一个参数,即ProgID—指定要创建的对象的类型。

返回3.4.2Server对象的方法(7个)

1)

Crea97默认情况下,由CreateObject方法创建的对象具有页作用域。这就是说,在当前ASP页处理完成之后,服务器将自动破坏这些对象。要创建有会话或应用程序作用域的对象,可以使用<Object>标识并设置Session或Application的Scope属性,也可以在对话及应用程序变量中存储该对象。

返回默认情况下,由CreateObject方法创建的对象具有页作981)MapPath

MapPath方法能把相对或虚拟路径映射成物理路径。

语法:Server.MapPath(Path)

参数:只有一个参数,即Path——要被转换的相对或虚拟路径。

返回1)MapPath

MapPath方法能把相对或虚拟路径映射99

3)

GetLastError

返回一个ASPError对象的实例,该实例描述最近发生的错误。

这是ASP3.0新增的功能。

4)

Execute

这是ASP3.0新增的功能,它让你可以在一个ASP文件中执行另一个ASP文件,执行完毕回到原来的ASP文件(仿佛是子程序调用哟!)语法如下:

Server.Execute"asp文件"

返回

3)GetLastError

返回一个ASPError对1005)

Transfer

这也是ASP3.0新增的功能,它让你可以在一个ASP文件中执行另一个ASP文件,执行完毕不回到原来的ASP文件(这是与Execute的区别)。

语法如下:

Server.Transfer"asp文件"

返回5)

Transfer

这也是ASP3.0新增的1016)HTMLEncode

HTMLEncode方法是对指定的字符串应用HTML编码。语法如下:

Server.HtmlEncode(String)

其中String指定要编码的字符串,它应当是HTML标记才有意义。当从服务器端向浏览器输出HTML标记时,浏览器就将其解释为HTML标记。

返回6)HTMLEncode

HTMLEncode方法是对指定1027)URLEncode

URLEncode方法将指定的字符串进行URL编码,语法如下:

Server.URLEncode(Str)

其中Str指定要编码的字符串。返回7)URLEncode

URLEncode方法将指定的字符串1033.5Session对象及其应用

由于HTTP是一种无状态的协议,因此无法得知用户的浏览状态。在ASP中,是通过Session对象记录用户的相关信息,用来作为用户再次对服务器访问时作确认。

当用户请求来自应用程序的Web页时,如果该用户还没有会话,则Web服务器将自动创建一个Session对象。当会话过期或被放弃后,服务器将终止该会话。当用户在应用程序的Web页之间跳转时,存储在Session对象中的变量将不会丢失,而是在整个用户会话中一直存在下去。

返回3.5Session对象及其应用

由于HTT104Session对象的创建和使用可弥补HTTP协议的局限,请注意HTTP协议的工作方式是:一用户发出请求,服务器端作出响应,这种用户端和服务器端之间的联系是离散的,在HTTP协议中没有什么方法能够允许服务端来跟踪用户请求。在服务端完成响应用户请求后,服务器端不能持续与该浏览器保持连接。

返回Session对象的创建和使用可弥补HTTP协议的局105使用Session对象前,必须确认浏览器的Cookies功能已启用(默认设置)。如果以前更改过默认设置,Cookies功能可以通过浏览器的设置来开启。

返回使用Session对象前,必须确认浏览器的Cookie1063.5.1Session对象的数据集合(2个)

1)

Contents

Contents集合包括所有未使用<OBJECT>标识而为该会话建立的项目。此集合可用于确定指定会话项的值或遍历集合,并检索出会话中所有项的列表。

语法:Session.Contents(Key)

参数:只有一个参数,即Key—要获取的属性的名称。

返回3.5.1Session对象的数据集合(2个)

1)

Co107返回“Global.asa”文件与应用程序

“Global.asa”是—个可选文件,在这个文件中,可以定义事件脚本和使用Session和Application对象。“Global.asa”文件的内容不能向用户显示,但是它存储的信息可应用于整个应用程序。这个文件必须命名为“Global.asa”,并且存储在应用程序的启动点的目录下面,一个应用程序只能有一个“Global.asa”文件。

“Global.asa”文件只能包含以下内容:Application事件;Session事件;

<OBJECT>的声明;类库的声明。

返回“Global.asa”文件与应用程序

“108返回2)StaticObjects

它与Contents的概念和用法大致相同,不同在于,StaticObjects只返回由Global.asa文件中<Object>所建立的对象变量。

语法如下:

Session.StaticObjects(变量名称)

返回2)StaticObjects

它与Con109返回3.5.2Session对象的属性

1)

CodePage

它是一个字符集代码,当ASP处理网页内容时,会根据这个代码将网页的字符转为自动识别(UNICODE)。

语法:Session.CodePage=代码

或者查看当前值:<%=Session.CodePage%>

返回3.5.2Session对象的属性

1)

CodePa1102)LCID

它代表一个国家或地区的相关设置,包括事件格式及货币显示。

语法:Session.LCID=代码

或者查看当前值:<%=Session.LCID%>

返回2)LCID

它代表一个国家或地区的相关设置,包括事件格式111返回3)SessionID

ASP给每个用户会话分配了唯一的识别标志。用户会话首次被创建时,其SessionID就产生了,并一直随用户在网站上保留着。不同用户获得同—个页面时会显示不同的ID,但同一个用户即使多次获得此页面,每次也将显示同样的ID。

返回3)SessionID

ASP给每个用户1124)Timeout

Session对象在服务器上保留是有时间限制的,缺省值为20分钟。可以通过设置Session对象的TimeOut属性来改变超时时间,这个时间是以分为单位的。

语法:Session.TimeOut[=Time]

参数:只有一个参数,即Time,表示Session的过期时间,以分为单位。

返回4)Timeout

Session对象在服1133.5.3Session对象的方法(1个)

Abandon(唯一)

对于一个Session来说,无论用户怎样进行主页间的切换,都会只有一个SessionID,但是可以使用“Session.Abandon”开辟一个新的Session,对于服务器端来说,是两个不同的Session,SessionID也会变化,其中前面的已经关闭,后面的仍然保持。

返回3.5.3Session对象的方法(1个)

Abandon114返回3.5.4Session对象的事件(2个)

和其他对象不同的是,Session对象中有两种事件。一种是Session_OnStart事件,当一个Session开始时被触发;另一种是Session_OnEnd事件,当一个Session结束时被触发。在一个脚本中可以和其中一个并且只能和其中一个事件关联。

返回3.5.4Session对象的事件(2个)

1151)

Session_OnStart

“Global.asa”包括四个脚本程序,它们只能根据Session_OnStart、Session_OnEnd、Application_OnStart、Application_OnEnd触发。只需要在“Global.asa”中添加一些希望运行的脚本程序,那么只要Session对象一创建,这些脚本程序就会自动运行。

返回1)

Session_OnStart

“Glob1162)

Session_OnEnd

Session_OnEnd事件将在会话被放弃或超时发生,用法类似于Session_OnStart事件。

注意:在Session_OnEnd事件中不能使用MapPath方法。

Session_OnStart、Session_OnEnd以及下文的Application_OnStart、Application_OnEnd都只能以子程序的形式存储在Global.asa文件中。不能在普通脚本中定义。

返回2)

Session_OnEnd

Session1173.6Application对象及其应用

Application对象没有属性。Application对象和Session对象有很多相似之处,它们的功能都是用于在不同的ASP之间共享信息。最大的不同在于其应用的范围:Application变量也可以被多个用户共享,从一个用户接受到的Application变量可以传递给另外的用户。

返回3.6Application对象及其应用

App118Application对象是对所有用户,Session对象是对单一用户。和Session不同的还有,Application变量不需要Cookies。网站不需要利用Application变量来跟踪用户进程。可以适应任何浏览器。

由于Application变量对于多用户是共享的,因此与Session变量有着本质的区别。

返回Application对象是对所有用户,Ses119返回3.6.1Application对象的集合(2个)

1)

Contents

该集合包括了Application对象的所有变量,但不包括由<Object>所创建的对象变量。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论