2024年3月10日发(作者:)
ASP Session对象
Session对象的用途是用来存储浏览器端的数据,或称存储特定用户的信息。与
Application对象不同,Application对象存储的是所有浏览器端共享的数据,而Session
对象存储的是个别浏览器端专用的数据。
1 Session对象属性
Session对象提供的属性,包括Timeout属性、SessionID属性、LCID属性和C
odePage属性,等等。
1.Timeout属性
Session对象的Timeout属性用来设置Session的最长时间间隔,这里所谓的时
间间隔是指服务器端从最近一次向Web服务器提出要求到下一次向Web服务器提
出要求的时间,以分钟为单位,语法如下:
t = 分钟数
2.SessionID属性
SessionID属性可为每个用户返回一个唯一的ID。此ID由服务器生成,是一个
不重复的长整数数字,语法如下:
长整数=nID
例如:
<%
(nID)
%>
服务器会自动生成ID,结果如下:
55702372
3.LCID属性
LCID属性可设置或者返回一个规定位置或者地区的整数。诸如日期、时间以
及货币等内容都会根据位置或者地区来显示。
语法格式如下:
= LCID值
4.CodePage属性
由于用户来自世界各地,无法事先编写各种不同的版本,所以ASP的Session
对象提供CodePage属性。CodePage属性表示字符串编码及转换的依据。代码页是
一个可以包括数字、标点符号以及其他字母的字符集。对于不同的语言和地区可
以使用不同的代码页。例如,ANSI代码页1252用于美国、英语和大多数欧洲语
言,代码页932用于日文字,简体中文的代码页为936。
语法格式如下:
Session. CodePage = CodePage值
2 Session对象方法
Session对象允许从用户会话空间删除指定值,并根据需要终止会话。Session
对象提供了三种方法:方法、All方法、。
1.方法
方法可从Contents集合中删除一个项目。语法格式如下:
(name|index)
其中,name表示要删除项目的名称,index表示要删除项目的索引号。
例如:
<%
Session("test1")=("First test")
Session("test2")=("Second test")
Session("test3")=("Third test")
("test2")
For Each x In ts
(x & "=" & ts(x) & "
")
Next
%>
输出结果如下所示:
test1=First test
test3=Third test
2.All方法
与方法相似,All方法可从Contents集合中删
除全部项目。语法格式如下:
All()
3.Abandon方法
Abandon方法删除所有存储在Session对象中的对象并释放这些资源。如果明
确地调用Abandon方法,一旦会话超时,服务器就会删除这些对象,无法再取得其
变量值,而且Session_OnEnd事件将一起被激活,语法格式如下:
n
Abandon方法被调用时,将按顺序删除当前的Session对象,不过在当前页中所有
脚本命令都处理完后,对象才会被真正删除。这就是说,在调用Abandon方法时,
可以在当前页上访问存储在Session对象中的变量,但在随后的Web页面就不行。
3 Session对象集合
Session对象的数据集合有两种,Contents集合、StaticObject数据集合。
1.Contents数据集合
绝大部分的Session对象存放在Contents集合中,当创建一个信的Session对象
时,其实就是在Contents集合中添加了一项,例如下面两条语句是等效的:
<%
Session("username") = "test"
ts("username")="test"
%>
Contents数据集合有3个属性和提供了Remove和RemoveAll方法。
Item属性 使用Item属性可以访问或者设置Contents集合中的一个值。Item属性允许通过
名字访问和应用集合中的值。
Count属性 Count属性表示集合中存储的属性数目。
Key属性 使用Key属性可以按索引找出属性的名字。对于Item属性中存储的每个值,在
Key属性中都有一个条目,指定了用于存储这个值的名字。
2.StaticObjects集合
StaticObjects集合包含所有使用HTML
的对象。该对象可用于确定对象特定属性的值,或者用于遍历集合并获得所有对
象的全部属性,语法格式如下:
Objects (对象变量名称)
4 Session对象的事件
Session对象对应两个事件:Session_OnStart、Session_OnEnd。其中Session_O
nStart事件对应Session对象的起始事件,每当开始一个新会话,该事件所定义的代
码都将被激活;Session_OnEnd事件对应Session对象的结束事件,当会话终止或者
失效时,触发该事件。
这两个事件的代码必须放在文件中,语法格式如下:


发布评论