关闭

JavaWEB_Session被禁用的后果和解决方法

2066人阅读 评论(0) 收藏 举报
分类:

原文地址:http://q.cnblogs.com/q/55805/

sessionid是存储在cookie中的,解决方案如下:

Session URL重写,保证在客户端禁用或不支持COOKIE时,仍然可以使用Session

session机制。session机制是一种服务器端的机制,服务器使用一种类似于散列表的结构(也可能就是使用散列表)来保存信息。

当程序需要为某个客户端的请求创建一个session时,服务器首先检查这个客户端的请求里是否已包含了一个session标识(称为session id),如果已包含则说明以前已经为此客户端创建过session,服务器就按照session id把这个session检索出来使用(检索不到,会新建一个),如果客户端请求不包含session id,则为此客户端创建一个session并且生成一个与此session相关联的session id,session id的值应该是一个既不会重复,又不容易被找到规律以仿造的字符串,这个session id将被在本次响应中返回给客户端保存。 保存这个session id的方式可以采用cookie,这样在交互过程中浏览器可以自动的按照规则把这个标识发挥给服务器。一般这个cookie的名字都是类似于 SEEESIONID。但cookie可以被人为的禁止,则必须有其他机制以便在cookie被禁止时仍然能够把session id传递回服务器。 经常被使用的一种技术叫做URL重写,就是把session id直接附加在URL路径的后面。还有一种技术叫做表单隐藏字段。就是服务器会自动修改表单,添加一个隐藏字段,以便在表单提交时能够把session id传递回服务器。比如:

<form name=”"testform”" action=”"/xxx”"> <input type=”"hidden”" name=”"jsessionid”" value=”"ByOK3vjFD75aPnrF7C2HmdnV6QZcEbzWoWiBYEnLerjQ99zWpBng!-145788764″”> <input type=”"text”"> </form>

URL重写:

http://www.test.com/test;jsessionid=ByOK3vjFD75aPnrF7C2HmdnV6QZcEbzWoWiBYEnLerjQ99zWpBng!-145788764

2
1
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

Cookie禁用了,Session还能用吗?

Cookie与 Session,一般认为是两个独立的东西,Session采用的是在服务器端保持状态的方案,而Cookie采用的是在客户端保持状态的方案。但为什么禁用Cookie就不能得到Session...
  • u010433704
  • u010433704
  • 2014-11-09 16:15
  • 14211

tomcat为什么要禁用session?

我们先来做一个实验,用jmeter对tomcat下的一个jsp页面做压测: (1)jsp的内容非常简单,1.jsp: 1.jsp this is 1.jsp 没有任何复杂的处理,只...
  • goldenfish1919
  • goldenfish1919
  • 2015-08-21 10:04
  • 3042

java web-如何实现IE禁用cookie后继续使用session

首先明白Session的原理:Session是在服务器端创建并保存在服务器端,当服务器返回响应信息时会以cookie形式返回key名为:JSESSION,value为当前SessionID的cooki...
  • qq_25281057
  • qq_25281057
  • 2016-09-03 18:58
  • 2863

jsessionid的困扰

问题:向某银行发送支付请求时,如果客户端cookie开启,第一次请求时,请求地址会自动增加一jsessionid,第二次没有问题。如果客户端cookie关闭,无论如何请求地址会自动添加一jsessio...
  • yztezhl
  • yztezhl
  • 2014-02-11 16:35
  • 2256

Java中session的销毁

【概述】 之前文章中介绍过Session,Session是另一种记录客户状态的机制,不同的是Cookie保存在客户端浏览器中,而Session保存在服务器上。客户端浏览器访问服务器的时候,服务器把客户...
  • u012581322
  • u012581322
  • 2016-12-11 19:55
  • 6819

【Java.Web】Session —— 针对浏览器不支持Cookie的情形,Session禁用Cookies

重写URL跟踪Session
  • robinjwong
  • robinjwong
  • 2014-10-07 14:35
  • 7329

Tomcat如何禁用session(Turn off the Session in Tomcat )

有时候我们不需要用到session,而session在tomcat中是属于关键功能,它在启动的时候会自动创建,这样就会消耗一定的内存空间,如果访问量大了session就会产生很多。这样也不利于我们进行...
  • ywch520
  • ywch520
  • 2016-06-07 20:27
  • 3296

Apache Shiro去掉URL中的JSESSIONID

最近集成框架用到shiro碰到url有时候会带上jsessionid有时候又没有。以前也碰到但是没有深入研究。 网上查了半天各种方法用了都没用。比如web.xml里面加session-config...
  • yyf314922957
  • yyf314922957
  • 2016-04-01 19:09
  • 8507

利用Session完成用户的登录和注销

用户的登录和注销是最常见的Web应用案例,当一个应用的客户登录了以后,其他所有的会话都得知道这个用户已经登录还很有可能得提取用户的昵称予以显示等等,所以,只有把登录成功的用户的信息放入到Session...
  • xigedanganxi
  • xigedanganxi
  • 2013-09-11 15:11
  • 52847

Java清除session的方法

看这篇文章前你可以看看: session的关闭的机制  第一种方法(继承SessionAware类来取得session,然后用invalidate()方法清理) publi...
  • qq_16769857
  • qq_16769857
  • 2015-09-16 18:51
  • 5225
    个人资料
    • 访问:895165次
    • 积分:13212
    • 等级:
    • 排名:第1175名
    • 原创:349篇
    • 转载:339篇
    • 译文:0篇
    • 评论:44条
    文章分类