码迷,mamicode.com
首页 > 其他好文 > 详细

浏览器禁用Cookie,基于Cookie的会话跟踪机制失效的解决办法

时间:2014-07-09 12:01:45      阅读:175      评论:0      收藏:0      [点我收藏+]

标签:cookie   servlet   

当浏览器禁用Cookies时,基于Cookie的会话跟踪机制就会失效,解决办法是利用URL重写机制跟踪用户会话。

bubuko.com,布布扣


在使用URL重写机制的时候需要注意,为了保证会话跟踪的正确性,所有的链接重定向语句中的URL都需要调用encodeURL()encodeRedirectURL()方法进行编码。另外,由于附加在URL中的SessionID是动态产生的,对于每一个用户都是不同的,所欲对于静态页面的相互跳转,URL重写机制就无能为力了,但是,我们也可以通过将静态页面转换为动态页面来解决这个问题。

在web开发程序的时候,如何去判断客户端是否禁用了Cookie,从而决定是否采用URL重写的机制去跟踪用户的会话。实际上,客户端时候禁用了Cookie,不需要我们去判断的,Servlet容器会帮我们做这件事情。我们在开发Web应用程序的时候,只需要对所有的链接和重定向语句中的URL都调用encodeURL()和encodeRedirectURL()方法进行编码就可以了。

        out.println("<form method=post action=loginchk>");
//<span style="white-space:pre">	</span>  这里是链接,所以调用encodeURL()方法
//        out.println("<form method=post action=" + res.encodeURL("loginchk") + ">");


<span style="white-space:pre">	</span>res.sendRedirect("s_login");
//<span style="white-space:pre">	</span>  这里是重定向语句,所以调用encodeRedirectURL()方法
//        res.sendRedirect(res.encodeRedirectURL("s_login"));

bubuko.com,布布扣


如果浏览器禁用了Cookie,不管验证是否正确都不会跳转,仍停留在当前登录界面。

浏览器禁用Cookie,基于Cookie的会话跟踪机制失效的解决办法,布布扣,bubuko.com

浏览器禁用Cookie,基于Cookie的会话跟踪机制失效的解决办法

标签:cookie   servlet   

原文地址:http://blog.csdn.net/w_basketboy24/article/details/37564825

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!