14.3 session 概述
这一部分我们要学习的是 session 技术。
通过上一节的学习,我们知道 Cookie 是通过将数据保存在客户端来实现与服务端保持连接的,而 Session 是通过将数据保存在服务器端来实现保持连接的。我们通过一个例子来了解 session 的机制。
我们去饮料店买饮料,下单以后服务员会给我们一个号码牌,然后你走到一旁,服务员并不认识你是谁,如果你想拿到你的饮料,你必须提供你的号码牌给服务员才可以,服务员通过号码牌来查记录,来确认你是顾客,确认你点了什么饮料,然后才会把你点的饮料给你。
了解了 session 原理,再回到 Web 技术中,我们有 2 种方法让客户端拿到“号码牌”,一种是通过 cookie,一种是通过把值嵌入网页传给客户端。我们也有 2 种方法来让客户端把号码牌传给服务器来拿属于自己的资料,一种是 cookie,一种是标准的 Query String/POST。
而我们常用的是 cookie,因为现在的浏览器都支持 cookie,默认也都开启。客户端与服务端彼此都会将 cookie 发送给对方。来个过程说明一下:打开浏览器输入 www.taobao.com 并回车,由于是第一次与这个网站建立连接,服务端还没有设置过 cookie(这里假设当前浏览器是第一次访问这个网址,之前这个网址没有向当前客户端写过 cookie),所以没有 cookie 发送到服务端,服务端在处理完数据返回的时候,会将一个 name 为 sessionid,value 为一连串 N 位字符的 cookie 发送给客户端,后续客户端再次访问服务端的时候,也会带上这个 cookie 来访问服务端。于是,他们就这样通过 sessionid 互相“认识”了。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论