中级JAVA:Cookie和Session区别

本文介绍了Cookie和Session在Web开发中的作用,它们用于解决HTTP协议无状态的问题。详细阐述了Cookie和Session的执行流程,以及两者的区别与联系。Cookie存储在客户端,存在大小限制,适合存储非敏感信息;而Session存储在服务器端,安全但会增加服务器负担。建议登录信息使用Session,购物车等可选Cookie或结合数据库存储。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、为什么要有cookie/session?

在客户端浏览器向服务器发送请求,服务器做出响应之后,二者便会断开连接(一次会话结束)。那么下次用户再来请求服务器,服务器没有任何办法去识别此用户是谁。

有了cookie可以向服务器证明用户身份了,我们的web系统中是不是需要将用户的详细信息储存在某个位置供页面调用呢?用户的详细信息就包括姓名,年龄,性别等信息。而cookie是存在于客户端的,将用户详细信息通过网络发送到客户端保存是极不安全的。且cookie大小不能超过4k,不能支持中文。这就限制cookie不能满足存储用户信息的需求。这就需要一种机制在服务器端的某个域中存储一些数据,这个域就是session。

总而言之,cookie/session的出现就是为了解决http协议无状态的弊端,为了让客户端和服务端建立长久联系而出现的。

2、什么是会话技术?

帮你存储一些在交互过程临时产生的数据。

当你打开浏览器,访问一个网站,认为会话开始了,当你关闭浏览器的时候,会话结束了。

3、cookie/session执行流程

cookie执行流程

当你去访问应用的时候,来到服务器。服务器设置一个cookie,在做响应的时候会通过set-cookie响应头将cookie带给浏览器。
来到浏览器,浏览器会将此数据保存起来,接下来再次去访问服务器的时候,浏览器会根据cookie的path属性将这些数据带回去(设置了一个叫做cookie的请求头),来到

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

数据大观察

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值