一、图片讲了什么?
这张图片主要讲的是“会话跟踪技术”,也就是网站怎么记住你是谁、你做了什么。
1. 什么是会话?
- 会话(Session)就像你和网站的一次聊天,从你打开网页到关闭网页,这段时间就是一次会话。
- 在这段时间里,你可能会点很多页面、发很多请求,这些都属于同一次会话。
2. 为什么需要会话跟踪?
- 因为HTTP协议是“无状态”的:每次你访问网站,服务器都当你是“新来的”,不会记得你上一次是谁、做了什么。
- 但实际开发中,网站需要“记住你”,比如你登录了、购物车里加了东西,这些都需要“跟踪”你的会话。
3. 怎么实现会话跟踪?
- 客户端跟踪技术:Cookie
网站会在你的浏览器里存一个小文件(Cookie),下次你访问时带上,服务器就能认出你。
- 服务端跟踪技术:Session
服务器在自己那边给你分配一个“身份牌”(Session),你每次访问时带上这个牌子,服务器就知道你是谁。
二、实际例子
例子1:登录网站
- 你用浏览器打开淘宝,输入账号密码登录。
- 服务器验证通过后,给你发一个Cookie或者Session ID。
- 你接下来浏览商品、加购物车、下单,服务器都能通过这个Cookie/Session ID认出你,不用每次都重新登录。
例子2:购物车
- 你在京东加了几样商品到购物车。
- 这些商品信息会通过会话跟踪技术(Cookie或Session)保存起来。
- 你刷新页面、切换商品,购物车里的东西还在,因为服务器知道你是谁。
总结一句话
会话跟踪技术就是让网站“记住你”,不管你点多少次、发多少请求,服务器都能知道“你还是你”,而不是每次都把你当成新用户。
我登陆豆包,豆包每次都是这个页面,知道我的名字,这是cookie吗
你登录豆包后,每次打开页面它都能显示你的名字“王若水”,说明它记住了你是谁。这背后确实用到了“会话跟踪技术”,但不一定只用 Cookie,通常是Cookie 和 Session 配合使用。
具体原理如下:
- Cookie 的作用
当你登录豆包后,服务器会生成一个“身份标识”(比如 session id),并通过 Cookie 存在你的浏览器里。下次你访问豆包时,浏览器会自动带上这个 Cookie,服务器就能识别你是谁。
2.Session 的作用
服务器收到你的 Cookie 后,会在自己的数据库或内存里查找对应的 session 信息(比如你的用户名、登录状态等),然后显示“中午好,王若水”。
3.为什么不用 Cookie 存所有信息?
Cookie 只存一个“钥匙”(session id),而不是所有用户信息。这样更安全,用户的详细信息都保存在服务器端。
实际流程举例
- 你第一次登录豆包,输入账号密码。
- 服务器验证通过后,给你浏览器发一个 Cookie(里面有 session id)。
- 你下次访问豆包,浏览器自动带上 Cookie,服务器通过 session id 查到你的信息,显示你的名字。
总结
- 你看到的“记住你是谁”,本质上是Cookie+Session共同实现的。
- Cookie 负责“带钥匙”,Session 负责“查信息”。
- 所以,豆包能记住你,是用了 Cookie(和 Session)这种会话跟踪技术。
如果你清理浏览器 Cookie 或用无痕模式访问,豆包就不会记住你是谁了,需要重新登录。