了解会话变量

Web 服务器(或者更具体地说,HTTP 协议)是无状态的,即它们不跟踪连接到它们的浏览器,也不跟踪用户的各个页面请求。Web 服务器每次接收对 Web 页的请求,并通过向用户的浏览器发送相关页面做出响应后,Web 服务器都会"忘记"进行请求的浏览器和它发送出去的 Web 页。当同一用户稍后请求一个相关页时,Web 服务器会发送该页,而并不知道它发给该用户的上一页是什么。

HTTP 的无状态本性使它成为一种简单而易于实现的协议,因此也使得越高级的 Web 应用程序(如个性化所生成的内容)越难实现。例如,为了给单个用户自定义站点内容,必须首先标识出该用户。许多 Web 站点使用某种用户名/密码登录形式来实现此目的。如果需要显示多个自定义的页面,则必需一种跟踪登录用户的机制,因为多数用户将不能接受为站点的每一页都提供其用户名和密码。

为了能够创建复杂的 Web 应用程序和在所有站点页间存储用户提供的数据,多数应用程序服务器技术都包括对会话管理的支持。会话管理使 Web 应用程序能够在多个 HTTP 请求之间维护状态,使用户对网页的请求在给定时间段内可视作同一交互会话的一部分。

会话变量存储着用户的会话生命周期的信息。当用户第一次打开应用程序中的某一页时,用户会话就此开始。当用户一段时间内不再打开该应用程序中的其它页时,或者用户明确终止该会话时(通常是通过单击"注销"链接),会话即告结束。在会话存在期间,会话特定于单个用户,每个用户都有单独的会话。

会话变量用于存储 Web 应用程序中每页都能访问的信息。信息可以多种多样,如用户名、首选字体大小,或者是指示用户是否成功登录的标记等。会话变量的另一个常见用途是保存连续分数,例如在网上测验中到目前为止用户答对的题数,或者到目前为止,用户从网上目录中选择的产品。

请注意,会话变量只有在用户的浏览器配置成接受 Cookie 后才起作用。当首次初始化会话时,服务器创建一个唯一标识该用户的会话 ID 号,然后将包含该 ID 号的 Cookie 发送到用户的浏览器。当用户请求服务器上的另一页时,服务器会读取浏览器中的 Cookie 以识别该用户并检索存储在服务器内存中的该用户的会话变量。

相关主题




未找到评论

 

评论添加到页面后给我发送电子邮件 | 评论报告

当前页: http://www.ecnnl.com/doc/dreamweaver/8_cn/using/34_obt10.htm

 

E中荷|荷兰华人电子商务