• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

Sessions的使用和处理

发布: 2007-6-30 18:56 | 作者: admin | 来源: | 查看: 17次 | 进入软件测试论坛讨论

领测软件测试网

Sessions的使用和处理

Session的发明是填补HTTP协议的局限,请注意HTTP协议是怎样工作的-用户发出请求,服务端作出响应,这种用户端和服务端之间的联系就是离散的,非连续的。

在HTTP协议中没有什么能够允许服务端来跟踪用户请求。在服务端完成响应用户请求后,服务端不能持续与该浏览器保持连接。从网站的观点上看,每一个新的请求都是单独存在的,因此,HTTP协议被认为是stateless协议,在用户在多个主页间转换时,你就根本无法知道他的身份。

Sessions的引用就是弥补了这个缺陷。利用Sessions,你就可以在一个用户在多个主页间切换的时候也能保存他的信息。这样很多以前根本无法去做的事情变得简单多了。

注意

现在还有很多浏览器不能支持Cookies,如果想要具体了解这些,看后面的相关部分。

开始Session信息

Active Server Pages的Sessions非常好用,你能够利用Session对象来对session全面控制,如果你需要在一个用户session中存储信息,你只需要简单的直接调用Session对象就可以了,下面是个例子:

<HTML>

<HEAD><TITLE>Session示例</TITLE></HEAD>

<BODY>

<%

Session(“Greeting”)=“欢迎!”

Response.Write(Session(“Greeting”))

%>

</BODY>

</HTML>

当Active Server Page执行时,浏览器上显示出”欢迎!”的字段,脚本第一行是给Greeting赋值为”欢迎!”,第二行将这个字段显示出来。

不过,这种操作没什么大不了的,但是,可以假象一个同样的用户进入另一个主页,例如,下面这个Active Server Pages:

<HTML>

<HEAD><TITLE>另一页</TITLE></HEAD>

<%=Session(“Greeting”)%>

</Body>

</html>

当他进入这页,同样的”欢迎!”又显示出来了,注意这一页没有赋值操作,这个Greeting变量的值是前面那页赋值的。

你无法用普通的脚本变量来进行这种处理,因为一般的变量只在一个单独主页内有效,而Session变量在用户离开网站前一直存在生效。

要理解的很重要的一点是Session变量是针对特定用户相联系的。针对某一个用户赋值的Session变量是和其他用户的Session变量完全独立的,不会存在相互影响。换句话说,这里面针对每一个用户保存的信息是每一个用户自己独享的,不会产生公享情况。例如下面这个例子(针对于注册表的例子):

<%

Session(“Myname”)=Response.form(“Username”)

Session(“Mycompany”)=Response.form(“Usercompany”)

%>

很明显,对于不同的用户,Session的Myname变量和Mycompany变量各自是不同的,在每个人在网站的不同主页间浏览时,这种针对这个个人的变量会一直保留,这样作为身份认证是十分有效的。

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备2023014753号-2
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网