WEB中会话跟踪
一、 什么叫会话跟踪
记录用户一段时间内的逻辑上相关联的不同访问请求个过程叫“会话跟踪”。通过用户在每次对服务请求时的唯一标识,可以跟踪会话。
二、 会话跟踪产生的原因
我们都知道Internet通信协议可以分为有状态协议和无状态协议,而我们在WWW上进行的访问HTTP协议是一个无状态协议,这种协议无法将用户的一个请求与另一个关联,这样有怎么能让我们在网络购物的时候添加商品呢?!而会话可以被看成一个与单个用户相互关联的对象,会话跟踪技术可以帮助每个用户在Web应用程序中的特定数据,当然它也可以区分不同用户在同一个Web应用程序中的数据,这样我们就能使得我们的购物车中能有我们已经挑选过的商品了。
三、 会话跟踪的重要性
会话跟踪对当今的电子商务类网站显得尤其重要,对于一些能够定制个性化的站点也显得尤其重要。如果在Amazon买过东西的话,我们就知道:这次买的东西,下次我们再访问Amazon的时候,出现的商品大部分是跟我们上次买的商品属于同一类或者类似上次购买过的商品。这样的实现,就是因为上次我们购买商品信息被“跟踪”了。
四、 实现会话跟踪的机制
1、Cookies
2、URL重写
3、隐藏式表单域
4、Session机制
Cookies
Cookies是使用最广泛的会话跟踪机制,Cookies是有服务器创建,并把Cookies信息保存在用户机器上的硬盘上,下次用户再次访问该站点服务器的时候,保存在用户机器上硬盘的Cookies信息就被送回给服务器。一般Cookies一般不多于4KB,且用户的敏感信息如信用卡账号密码不应该保存在Cookies中。
URL重写
URL重用户在每个URL结尾附加标识回话的数据,与标识符关联的服务器保存有关与会话的数据,如我们访问某个新闻的时候,在地址栏我们一般会看到这样的信息:http://www.XXX.com/news?id=??,通常的话id后面的问号表示该条新闻在后台数据库中的新闻表的id。URL重写能够在客户端停用cookies或者不支持cookies的时候仍然能够发挥作用。
隐藏表单域
通常,在表单中我们使用隐藏表单域的时候会有这么一句代码:<input type=”hidden” name=”XXX” value=”XXX”/>。通过给type属性赋值为hidden值来实现隐藏,这样用户在浏览的时候看不到这行代码的数据,但是当用户通过查看源代码还是可以看到的。
Session机制
这个机制要慎用,特别是对于访问量很大的站点,因为这种机制是吧Session信息保存在服务器端。如果访问量特别大的话,对于服务器的承受力的要求有多高是可想而知的。
五、总结
在当今越来越强调个性化服务的时代,WEB会话跟踪技术显得越加重要,但网络时代的信息安全也是越来越重要,到底选要何种会话机制,不能一概而论,但是个人认为:首先第一考虑的是信息的安全性,其次是考虑服务器的承载力。