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。

相关推荐
青衫客363 小时前
浅谈 Protobuf——高效、安全的跨语言通信基石
服务器·安全·远程调用·protobuf
Digitally3 小时前
如何安全轻松地出售损坏的 iPhone(最新指南)
安全·ios·iphone
Miki Makimura3 小时前
Reactor 模式实现:从 epoll 到高并发调试
运维·服务器·c++·学习
00后程序员张4 小时前
【Python】基于 PyQt6 和 Conda 的 PyInstaller 打包工具
运维·服务器·数据库
❀͜͡傀儡师5 小时前
使用docker 安装dragonfly带配置文件(x86和arm)版本
运维·docker·容器
我言秋日胜春朝★5 小时前
【Linux网络编程】多路转接reactor——ET模式的epoll
linux·服务器·网络
焦思懿--19期--工职大6 小时前
VMWare和物理机之间文件传输
linux·服务器·网络·电脑
乐迪信息7 小时前
乐迪信息:智慧煤矿输送带安全如何保障?AI摄像机全天候识别
大数据·运维·人工智能·安全·自动化·视觉检测
7hhhhhhh7 小时前
驱动开发-Linux启动
运维·服务器