- 3
- 0
- 约5.43千字
- 约 43页
- 2019-07-05 发布于江苏
- 举报
第四章 会话跟踪;理解HTTP协议的无状态性
了解什么是会话跟踪,
了解Web开发中会话跟踪技术的几种解决方案
理解Cookie技术的会话跟踪原理
掌握Cookie对象的创建、主要方法及使用
理解Session技术的会话跟踪原理
掌握HttpSession对象的生命周期和用法
理解URL重写技术的会话跟踪原理,掌握URL重写技术的使用
理解隐藏表单域的会话跟踪原理,了解隐藏表单域的使用;本章任务完成对“Q-ITOffer”锐聘网站的注册、登录、简历添加和照片上传功能进行进一步的完善。具体任务分解如下:
;
;
;HTTP协议是一种无状态协议。
HTTP协议采用“连接-请求-应答-关闭连接”模式。
对于交互式的Web应用,保持状态是非常重要的。一个有状态的协议可以用来帮助在多个请求和响应之间实现复杂的业务逻辑。;会话跟踪技术是一种在客户端与服务器间保持HTTP状态的解决方案。从开发角度考虑,是使上一次请求所传递的数据能够维持状态到下一次请求,并且辨认出是否相同的客户端所发送出来的。
会话跟踪技术的解决方案主要分为以下几种:
Cookie技术
Session技术
URL重写技术
隐藏表单域技术;Cookie技术是一种在客户端保持会话跟踪的解决方案。
Cookie是指某些网站为了辨别用户身份而储存在用户终端上的文本信息(通常经过加密)。
Cookie在用户第一次访问服务器时,由服务器通过响应头的方式发送给客户端浏览器;当用户再次向服务器发送请求时会附带上这些文本信息。;服务器对第一次客户端请求所响应的含有“Set-Cookie”响应头的响应报文信息;客户端再次请求时附带的含有“Cookie”请求头的报文信息;通过Cookie,服务器在接收到来自客户端浏览器的请求时,能够通过分析请求头的内容而得到客户端特有的信息,从而动态生成与该客户端相对应的内容。
例如,在很多登陆界面中可以看到“记住我”类似的选项,如果勾选后,下次再访问该网站时就会自动记住用户名和密码。另外,一些网站根据用户的使用喜好,进行个性化的风格设置、广告投放等,这些功能都可以通过存储在客户端的Cookie实现。;Cookie对象通过javax.servlet.http.Cookie类的构造方法来创建。
【示例】
其中,Cookie类的构造方法需要两个参数:
第一个String类型的参数用于指定Cookie的属性名;
第二个String类型的参数用于指定属性值。
;HttpServletResponse对象通过addCookie()方法,以增加“Set-Cookie”响应头的方式(不是替换原有的)将Cookie对象响应给客户端浏览器,存储在客户端机器上。
【示例】
其中:
参数为一个Cookie对象
;存储在客户端的Cookie,通过HttpServletRequest对象的getCookies()方法获取,该方法返回所访问网站的所有Cookie的对象数组,遍历该数组可以获得各个Cookie对象。
【示例】
;在默认情况下,Cookie只能被创建它的应用获取。Cookie的setPath()方法可以重新指定其访问路径,例如:将其设置为在某个应用下的某个路径共享,或者在同一服务器内的所有应用共享。
【示例】设置Cookie在某个应用下的访问路径
【示例】设置Cookie在服务器下所有应用的访问路径
;Cookie有一定的存活时间,不会在客户端一直保存。
默认情况下,Cookie保存在浏览器内存中,在浏览器关闭时失效,这种Cookie也称为临时Cookie(或会话Cookie)。
若要使Cookie较长时间的保存在磁盘上,可以通过Cookie对象的setMaxAge()方法设置其存活时间,保存在磁盘上的Cookie也称为持久Cookie。
;Cookie对象可以通过setMaxAge()方法设置其存活时间,时间以秒为单位:
时间若为正整数,表示其存活的秒数;
时间若为负数,表示其为临时Cookie;
时间若为0,表示通知浏览器删除相应的Cookie。
【示例】设置存活时间为1周的持久Cookie
;演示使用Cookie记录用户最近一次访问时间及访问次数。
;Cookie的缺点主要集中在其安全性和隐私保护上,主要包括以下几种:
Cookie可能被禁用,当用户非常注重个人隐私保护时,很可能会禁用浏览器的Cookie功能;
Cookie是与浏览器相关的,这意味着即使访问的是同一个页面,不同浏览器之间所保存的Cookie也是不能互相访问的;
Cookie可能被删除,因为每个Cookie都是硬盘上的一个文件,因此很有可能被用户删除;
Cookie的大小和个数受限,单个Cookie保存的数据不能超过4K,很多浏览器都限制一个站点最多保存20个Cookie;
Cookie安全性不够高,所有的
原创力文档

文档评论(0)