本篇内容主要讲解“session和cookie有什么区别”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“session和cookie有什么区别”吧!
session和cookie有什么区别呢?
由于HTTP协议是无状态的协议,所以服务端需要时时记录用户的状态,就需要用某种机制来识别具体的用户
session是一个存在于服务器上的类似一个散列表格的文件。里面存有我们需要的信息,在需要时可以从里面取出信息。可以将其视为一个大型的map,里面储存用户端sessionID,用户向服务器发送请求时会带上这个sessionID,取出相应的值
session应用场景:购物网站中当你点击“加入购物车”按钮,由于HTTP协议无状态,所以并不知道哪个是用户操作的,这时需要为特定的用户创建了特定的session,用于标识,跟踪用户,这样才知道将哪些物品放入购物车,这个session是放入服务器端的。在服务器端中保存session的方法很多,有内存、数据库、文件等。集群的时候也要考虑session的专一,在大型网站,也会有相应的专门的session服务器集群,用来保存用户会话,这个时候session信息放在内存中,使用一些缓存技术来放session,例如:Memcached
cookie应用场景:当登录网站时,下次希望这个网站能记住自己的账号,那么就需要建立一个本地cookie。每次HTTP请求的时候,客户端都会发送相应的cookie信息到服务器端。大多数都用cookie实现session跟踪,即第一次创建session的时候再cookie里面记录sessionID,此后每次请求都会把这个ID发往服务器端,服务器端就知道该处理什么了,如果浏览器禁用了cookie,则需要URL重写进行会话跟踪,就是每次HTTP交互的时候,URL后面会被附加以上,例如:sid=123456 这样的参数,服务端依此来识别用户
cookie与session一般认为是两个独立的东西,session采用的是服务器端保持状态的方法,cookie采用的客户端保持状态的方法但是,在禁止cookie后,session也不能实现,因为session是用sessionID来确定当前对话所对应的服务器session,而sessionID是通过cookie传递的,禁用cookie相对于失去了sessionID,也就无法得到session了,此时需要用URL或者隐藏表单传递sessionID
到此,相信大家对“session和cookie有什么区别”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。