背景 |
最近在项目中约到Cookies和Session,如果当我吧cookies禁用之后我会发现Sessionid没有了,基本上么有办法实现工作了,为此我很苦恼,经过查阅才知道为什么
Cookies |
What Cookies??如果我说cookies我想大家应该都不陌生吧,你给把他理解为你的浏览器中的缓冲区,要注意的是他是客户端这边的缓冲区也就是本地的
How cookies??cookies就是缓存,这个时候你会不会想缓存会不会出现问题呢??例如不能被缓存了!!其实cookies是由自己生命周期的?他的生命周期就是我们浏览器的一个窗口,如果你把这个浏览器关了,那么恭喜你cookies消失了,如果你的页面停留30分钟你有动他,你会发现有很多东西也没有了,其实也是这么一回事,不过你可以通过配置文件进行配置
当我们在浏览器中输入地址的时候,其实我们调用的都是doGet()请求,这个一定要记住,也就是使用Url就是doGet请求
Session |
What Session ??很多人都会感觉Session于Cookies非常的相似,甚至把他们记混,其实Session是存放在服务器上而Cookies是存放在客户端上,这个他们最根本的区别,并且Session每次进行会话的时候都会把唯一的Sessionid传给Cookies进行储存
How Session??? Session会话总共分为4个步骤
1.创建sessionid,这个是不会重复的,编号也会带回去,把编号设置到cookies中,他只属于该窗口
2李四也会有一个sessionid,也会执行1中内容
3访问完之后就断开,谁也不知道谁了
4url重写,每次请求都把sessionid方法url后面(如果cookis禁用的话)
对于第四个步骤,其实上他是为了解决问题而出现的,在我们设置中有一项是可以把Cookies给禁用的,所以这个时候你就没有办法保存你的Sessionid,所以解决方案就是使用Url重写进行解决,现在大部分的web网站都是使用的这种方式,因为这种方式简单好用
总结 |
这次只是进行的简单总结,我会周五的时候为大家详细的说一下HttpServletRequest和HttpServletResponse,和http协议,他们都是web开发的核心,如果想玩好,那么他们必须懂