Java学习笔记(八)--Session和Cookie

本文探讨了HTTP的无状态特性及其带来的问题,引出了Cookie和Session作为解决方案的角色。介绍了Cookie的工作原理,包括如何设置和读取,并强调了其不可跨域的特性。接着讲解了Session的实现机制,涉及SessionID的存储与会话管理。最后,对比了Cookie和Session的安全性和资源消耗差异,指出Session在服务器资源上的影响以及Cookie数量的限制问题。

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

强烈推荐一个大神的人工智能的教程:http://www.captainai.net/zhanghan

由来

  HTTP是无状态协议,它不对之前发生过的请求和响应的状态进行管理,即无法根据之前的状态进行本次的请求处理。当登录一个系统时,因为是无状态的则登录系统后每次请求一个新的web页面不是每次都需要重新登录,就是需要在每个请求报文中附加参数来管理登录状态。

  • 无状态协议优点:不必保存状态,因此可减少服务器的CPU及内存资源消耗。
  • 无状态协议缺点:在每次请求的时候服务端都需要判断这是谁发来的请求,也会造成服务端的一些负担,为解决此类问题,引入了Cookie机制和Session机制。

Cookie

  • 是什么:指某些网站为了辨别用户身份、进行 session 跟踪而储存在用户本地终端上的数据
  • 实现机制:Cookie 技术通过在请求和响应报文中写入 Cookie 信息来控制客户端的状态。Cookie 会根据从服务器端发送的响应报文内的一个叫做 Set-Cookie 的首部字段信息,通知客户端保存 Cookie。当下次客户端再往该服务器发送请求时,客户端会动在请求报文中加入 Cookie 值后发送出去。服务器端发现客户端发送过来的 Cookie 后,会去检查究竟是从哪一个客户端发来的连接请求,然后对比服务器上的记录,最后得到之前的状态信息。

  ①后端给前端返回Cookie要求客户端保存Cookie信息

评论 19
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值