当前位置:网站首页>Cookie和Session使用
Cookie和Session使用
2022-08-03 11:00:00 【51CTO】
一.为什么需要cookie?
A、B两人都有自己的京东账号,且都在本地登录成功过(7天免密登录),此时A将自己的购物车练级发送给B,B用浏览器访问该链接是无法查看到A的购物车内容的,B可能直接进入到自己的购物车或者提示B需要重新登录跳转到了登录页面。该场景说明,服务端知道访问的客户端是谁。但是我们都知道http是无状态的,我们就需要使用cookie来标记客户端是谁并将其发送给服务端。
二.Cookie及Session
Cookie 是保存在本地的一组键值对。Cookie的工作原理:它是当客户端访问服务端后,服务端生成的并发送给客户端并保存在客户端本地的一组键值对,它是用来保存用户的信息(信息客户端自定义)。当浏览器再次访问时,浏览器就会自动带上cookie,这样服务器就能通过cookie的内容来判断服务端是谁了。
虽然cookie在一定程度上解决了”保持状态”的需求,弥补了http协议的无状态的缺陷,但是由于cookie本身最大只支持4096字节;且cookie是保存在客户端本地的,可以被拦截或截取,在安全性上并不能保证。所以,此时需要用session来协助解决最大字节问题及保存在本地的安全性问题,session将用户信息保存在服务器。
那么,如果将session保持到服务端,客户端如何通过cookie将服务端的session桥接起来?
这样就出现了cookie和session如何协助的问题?我们可以给每个客户端的cookie分配一个唯一的id,这样用户在访问时,通过cookie,服务器就知道来的人事谁。然后我们再根据不同cookie的id,在服务器上保存一段时间的用户私密资料。
总结而言:cookie弥补了http无状态的不足,让服务器知道来的人是’谁’;但是cookie以文本的形式保存在本地,自身安全性较差;所以我们就通过cookie识别不同的用户,对应的在session里保存用户私密的信息已及能超过4096字节的文本。
三.Cookie的单独使用?
四.Cookie及Session的结合应用?
边栏推荐
猜你喜欢

Summary of redis basics - data types (strings, lists, sets, hashes, sets)

白帽黑客与留守儿童破壁对“画”!ISC、中国光华科技基金会、光明网携手启动数字安全元宇宙公益展

用于发票处理的 DocuWare,摆脱纸张和数据输入的束缚,自动处理所有收到的发票

SAP 电商云 Spartacus UI 的 External Routes 设计明细

鸿蒙第三次

APENFT FOUNDATION官宣2022艺术梦想基金主题征集

干货!一种被称为Deformable Butterfly(DeBut)的高度结构化且稀疏的线性变换

go——并发编程

redis基础知识总结——数据类型(字符串,列表,集合,哈希,集合)

CADEditorX ActiveX 14.1.X
随机推荐
消费者认可度较高 地理标志农产品为啥“香”
Babbitt | Metaverse daily must-read: Players leave, platforms are shut down, and the digital collection market is gradually cooling down. Where is the future of the industry?...
程序员架构修炼之道:如何设计出可持续演进的系统架构?
Skills required to be a good architect: How to draw a system architecture that everyone will love?What's the secret?Come and open this article to see it!...
Interview Blitz 71: What's the difference between GET and POST?
机器学习(第一章)—— 特征工程
[LeetCode—Question 2 Sum of Two Numbers Detailed Code Explanation ] The source code is attached, which can be copied directly
深度学习经典网络 -- Inception系列(稀疏结构)
507. 完美数
LeetCode_二分搜索_简单_367.有效的完全平方数
GBase 8c分布式数据库,数据如何分布最优?
分布式事务七种解决方案
【二分查找详解外加递归写法】附有全部代码
【LeetCode—第2题 两数之和 代码详解 】附有源码,可直接复制
Spinner文字显示不全解决办法
ERC20通证标准是什么?
全新的Uber App设计
在安装GBase 8c数据库的时候,报错显示“Host ips belong to different cluster”。这是为什么呢?有什么解决办法?
MATLAB programming and application 2.7 Structural data and unit data
redis基础知识总结——数据类型(字符串,列表,集合,哈希,集合)