详解SESSION与COOKIE的区别
来源:互联网 发布:虚拟机 for mac 编辑:程序博客网 时间:2024/05/16 05:51
什么是状态管理?
指对同一页或不同页的多个请求维护状态和页信息的过程
为什么要进行状态管理?
Web页是无状态的,不保存任何用户请求信息,而且到服务器的每一往返过程都将销毁并重新创建页,所以超出单个页的生命周期之后,页信息将不存在。
状态管理的作用
指示用户信息
使得页与页之间、请求与请求之间能够共享信息
更为快速的数据存储和读取
- 从一个客户到达某个网页开始,到其离开该网页为止的这段时间内,服务器会为该用户分配一个Session,以保存该用户会话时所需要的信息
- 当用户在页面之间切换时,存储在Session对象中的变量不会被清除,当客户访问网页时,这些变量会一直存在
- Session状态使用的范围:使用同一个客户端(浏览器实例)访问同一个应用程序的所有页面。
- 虽然Session的大小没有限制,但是我们千万不能滥用Session。推荐在Session中存储少于100K的数据。
- Session是在用户第一次访问网站的时候创建的,那么Session是什么时候销毁的呢?
- 默认情况下,Session的超时时间(Timeout)是20分钟,用户保持连续20分钟不访问网站,则Session被收回,如果在这20分钟内用户又访问了一次页面,那么20分钟重新计时
cookie定义:
Cookie是由服务器端生成,发送给User-Agent(一般是浏览器),浏览器会将Cookie的key/value保存到某个目录下的文本文件内,下次请求同一网站时就发送该Cookie给服务器(前提是浏览器设置为启用cookie).当你在浏览网站的时候,Web服务器会先送一小小资料放在你的计算机上,Cookies 会帮你在网站上所打的文字或是一些选择都记录下来。当下次你再访问同一个网站,Web服务器会先看看有没有它上次留下的Cookies资料,有的话,就会依据Cookie里的内容来判断使用者,送出特定的网页内容给你。
作用:
服务器可以利用Cookies包含信息的任意性来筛选并经常性维护这些信息,以判断在HTTP传输中的状态。Cookies最典型的应用是判定注册用户是否已经登录网站,用户可能会得到提示,是否在下一次进入此网站时保留用户信息以便简化登录手续,这些都是Cookies的功用。另一个重要应用场合是“购物车”之类处理。用户可能会在一段时间内在同一家网站的不同页面中选择不同的商品,这些信息都会写入Cookies,以便在最后付款时提取信息。
- Cookie可分为两类:会话Cookie和持久性Cookie。
- 在浏览器的处理过程中保留的Cookie称为会话Cookie,这种Cookie是暂时性的,当关闭浏览器后,任何会话Cookie都会丢失。持久性Cookie可以保存几个月甚至几年。
- 每个 Cookie 必须有一个唯一的名称,以便以后从浏览器读取 Cookie 时可以识别它。由于 Cookie 按名称存储,因此用相同的名称命名两个 Cookie 会导致其中一个 Cookie 被覆盖。
- 一小段保存在客户端的数据,位于<Windows安装盘>:\Documents and Settings\<用户名>\Cookies
- 用户每次访问网站页面的时候,浏览器会根据网站的URL在本地Cookies文件夹内查找是否存在当前网站关联的Cookie,如有就连同页面请求一起发送到服务器
- 大多数浏览器规定Cookie大小不超过4K,每个站点能保存的Cookie不超过20个,所有站点的Cookie总数不超过300个;
- 只能存储字符串;
- 安全性差,不要保存保密信息,如用户名、密码、信用卡号等。建议敏感数据(如验证码)加密后存储。
通常session cookie是不能跨窗口使用的,当你新开了一个浏览器窗口进入相同页面时,系统会赋予你一个新的sessionid,这样我们信息共享的目的就达不到了,此时我们可以先把sessionid保存在persistent cookie中,然后在新窗口中读出来,就可以得到上一个窗口SessionID了,这样通过session cookie和persistent cookie的结合我们就实现了跨窗口的session tracking(会话跟踪)。
- 详解SESSION与COOKIE的区别
- 详解SESSION与COOKIE的区别
- 详解SESSION与COOKIE的区别
- 详解SESSION与COOKIE的区别
- 详解SESSION与COOKIE的区别
- 详解SESSION与COOKIE的区别
- 详解SESSION与COOKIE的区别
- 详解SESSION与COOKIE的区别
- Cookie与Session的区别详解
- Session与cookie的区别详解
- session与cookie的区别
- session与cookie的区别
- Session与Cookie的区别
- session与cookie的区别
- cookie与Session的区别
- session与cookie的区别
- session与cookie的区别
- cookie 与 session 的区别
- CloudXNS首次使用体验
- ngnix-fastcgi通用配置
- iOS学习4_UITableView的使用
- String 的那点事儿
- 优化数据页面(19)——提供排序
- 详解SESSION与COOKIE的区别
- C++获取文件路径
- 在windows下面调试linux代码
- 电子邮件营销在数字营销浪潮中扮演关键角色
- Missing library: xdoclet-1.2.1.jar. Select the home directory for XDoclet. 1.2.1
- Ros(fuerte)+rgbdslam_freiburg+installation
- 徐州便利网商城市场部招聘:业务经理 市场专员
- NodeJS获取命令行后面的参数
- int ,long , long long, __int64类型的范围