Cookie和Seeion在客户端和服务端的角色作用

一.Cookie

Cookie作用:位于客户端(如:本地浏览器),可存储少量的数据(4KB以下)。

主要用途有:

  1. 存储用户登录状态
  2. 跟踪用户信息(购物车内容、用户偏好设置、网站分析等)

Cookie可以理解为一个桶,桶里存放了很多东西,例如用户的状态、用户偏好设置等

用户登录验证使用Cookie流程:

客户端向服务端发送请求,然后服务端会返回一个Cookie给客户端,而这个Cookie中存在一个认证信息。这个认证信息可以是SessionID,也可以是Token令牌,也可以是别的。主要作用是:客户端再次发送请求时,服务器会验证这个Cookie中存储的SeeionID,如果正确就把数据返回。

简单抽象理解:

你朋友有了一个暗码,你给你朋友发送信息,你朋友接收到了,然后给你发了一个暗码,要求你之后发送信息必须存在这个暗码,以此来证明你的身份没有发生改变。

2.Session

Session用于在服务器端存储用户数据(数据量取决于服务器的内存),客户端仅存储一个标识符。也就是Cookie讲述中的第一次访问服务器时,客户端接收的SessionID,会和服务器的Session作匹配。

存储的是当前的会话数据,一旦结束会话,Session就会失效

作用是,你给你朋友发送了一个暗码,而这个暗码对应了你朋友的全部信息(姓名、性别、年龄等),你朋友给你发送信息时(Http请求)携带暗码,你会将信息中的暗码(SeesionID)进行查找,这样你就知道这是哪位朋友了!可以正常通信

注:浏览器中多个不同的网页,他们的Cookie都是隔离的,例如A网页给服务器发送Http请求,那么只发送A的Cookie。

相关推荐
珠海西格电力科技27 分钟前
微电网能量平衡理论的实现条件在不同场景下有哪些差异?
运维·服务器·网络·人工智能·云计算·智慧城市
QT.qtqtqtqtqt33 分钟前
未授权访问漏洞
网络·安全·web安全
释怀不想释怀1 小时前
Linux环境变量
linux·运维·服务器
zzzsde1 小时前
【Linux】进程(4):进程优先级&&调度队列
linux·运维·服务器
qq_297574672 小时前
Linux 服务器 Java 开发环境搭建保姆级教程
java·linux·服务器
聆风吟º2 小时前
CANN开源项目实战指南:使用oam-tools构建自动化故障诊断与运维可观测性体系
运维·开源·自动化·cann
神梦流3 小时前
ops-math 算子库的扩展能力:高精度与复数运算的硬件映射策略
服务器·数据库
NPE~3 小时前
自动化工具Drissonpage 保姆级教程(含xpath语法)
运维·后端·爬虫·自动化·网络爬虫·xpath·浏览器自动化
神梦流3 小时前
GE 引擎的内存优化终局:静态生命周期分析指导下的内存分配与复用策略
linux·运维·服务器
凡人叶枫3 小时前
C++中输入、输出和文件操作详解(Linux实战版)| 从基础到项目落地,避坑指南
linux·服务器·c语言·开发语言·c++