利用session,cookie进行安全性控制
Sessions的介绍
什么是Sessions?session其实指的就是访问者从到达某个特定主页到离开为止的那段时间,每个访问者都会单独获得一个session。
Sessions可以用来储存访问者的一些喜好,例如:访问者是喜好绿色背景还是兰色?访问者是否对分屏方式怀有敌意。以及访问者是否宁可浏览纯文本的站点,这些信息可以依据sessions来跟踪。
Sessions还可以创建虚拟购物篮。无论什么时候用户在你的网站中选择了一种产品,那么这种产品就会进入购物篮,当他或她准备离开时,就可以立即进行以上所有选择的产品的订购。这些购物信息可以被保存在Session中。
最后,Sessions还可以用来跟踪访问者的习惯,就象现在环境学者跟踪大白鲨生活习性一样。你可以跟踪你的访问者从一个主页到另一个主页,这样对于你对站点的更新和定位是非常有好处的。
Sessions的使用和处理
Session的发明是填补HTTP协议的局限,请注意HTTP协议是怎样工作的-用户发出请求,服务端作出响应,这种用户端和服务端之间的联系就是离散的,非连续的。
在HTTP协议中没有什么能够允许服务端来跟踪用户请求。在服务端完成响应用户请求后,服务端不能持续与该浏览器保持连接。从网站的观点上看,每一个新的请求都是单独存在的,因此,HTTP协议被认为是stateless协议,在用户在多个主页间转换时,你就根本无法知道他的身份。
Sessions的引用就是弥补了这个缺陷。利用Sessions,你就可以在一个用户在多个主页间切换的时候也能保存他的信息。这样很多以前根本无法去做的事情变得简单多了。
注意
现在还有很多浏览器不能支持Cookies,如果想要具体了解这些,看后面的相关部分。
开始Session信息
Active Server
Pages的Sessions非常好用,你能够利用Session对象来对session全面控制,如果你需要在一个用户session中存储信息,你只需要简单的直接调用Session对象就可以了,下面是个例子:
Session示例
<%
Session(“Greeting”)=“欢迎!”
Response.Write(Session(“Greeting”))
%>
当Active Server
Page执行时,浏览器上显示出”欢迎!”的字段,脚本第一行是给Greeting赋值为”欢迎!”,第二行将这个字段显示出来。
不过,这种操作没什么大不了的,但是,可以假象一个同样的用户进入另一个主页,例如,下面这个Active Server Pages:
另一页
<%=Session(“Greeting”)%>