毕业设计网
开发环境 |

ASP内置对象—Session对象

Session是与Application对象有相似作用的另一个非常实用的ASP内置对象。使用它存储特定的用户会话所需信息。当用户在应用程序的页之间跳转时,存储在Session对象中的变量不会清除,而用户在应用程序中访问页面时,这些变量始终存在。当用户请求来自应用程序的web页时,如果该用户还没有会话,则Web服务器将自动创建一个Session对象。当会话过期或被放弃后,服务器将终止该会话。
 通过向客户程序发送唯一的Cookie可以管理服务器上的Session对象。当用户第一次请求ASP应用程序中的某个页面时,ASP要检查HTTP头信息,查看在本文中是否有名为ASPSESSIONID的Cookie发送过来,如果有,则服务器会启动新的会话,并为该会话生成一个全局唯一的值,再把这个值作为新ASPSESSIONID cookie的值发送给客户端,正是使用这种Cookie,可以访问存储在服务器上的属于客户程序的信息。
1. 属性
(1)  SessionID
  SessionID属性返回用户的会话标识。在创建会话时,服务器会为每一个会话生成一个单独的标识。会话标识以长整形数据类型返回。在很多情况下SessionID可以用于Web页面注册统计。
(2) Timeout
  Timeout属性以分钟为单位为该应用程序的Session对象指定超时时限。如果用户在该超时时限之内不刷新或请求网页,则该会话将终止。
 2.方法
  Session对象仅有一个abandon方法,该方法删除所有存储在Session中的对象并释放这些对象的源。如果不明确调用Abandon的方法,一旦会话超时,服务器将删除这些对象。当服务器处理完当前页时,下面示例将释放会话状态。    <%Session Abandon%>
3.事件
  Session对象有两个事件可用于在Session对象启动和释放时的运行过程。
 (1)Session_OnStart事件在服务器创建新会话时发生。服务器在执行请求的页之前先处理该脚本。Session_OnStart事件是设置会话期变量的最佳时机,因为在访问任何页之前都会先设置它们。尽管在Session_OnStart事件包含Redirect或End方法调用情况下Session对象仍会保持,然而服务器将停止处理Global.asp文件并触发Session_OnStart事件的文件中的脚本。
  为了确保用户在打开某个特定的Web页时始终启动一个会话,可在Session_OnStart事件中调用Redirect方法。当用户进入应用程序时,服务器将为用户创建一个会话并处理Session_OnStart事件脚本。用户可以将脚本包含在该事件中以便检查用户打开的页是不是启动页,如果不是,就指示用户调用Response.Redirect方法启动网页。
 (2)Session_OnEnd事件在会话被放弃或超时发生。
4.会话的3种方式启动:
(1)一个新用户请求访问一个URL,该URL标识了某个应用程序中的.asp文件,并且该应用程序的Global.asa文件包含Session_onStart过程。
(2)用户在Session对象中存储了一个值。
(3)用户请求了一个应用程序的 .asp文件,并且该应用程序的Global.asa文件使用 <OBJECT>标签创建带有会话作用域的对象的实例。
 如果用户在指定时间内没有请求或刷新应用程序中的任何页,会话将自动结束。这段时间的默认值是20分钟。可以通过在Internet服务管理器中设置“应用程序选项”属性页中的“会话超时”属性改变应用程序的默认超时限制设置。

 

以上是一部分介绍,如需要完整的资料或者如不符合您的要求,请联系技术人员qq:242219979咨询

上一篇:ASP内置组件 —FileAccess组件
下一篇:ASP内置对象—Server对象


版权所有 毕业设计网联系qq:242219979 © 2007-2022