cookie和session的工作过程和作用:弥补http无状态的不足

cookie是客户端浏览器保存服务端数据的一种机制。当通过浏览器去访问服务端时,服务端可以把状态数据以key-value的形式写入到cookie中,存储到浏览器。浏览器下次去服务服务端时,就可以把这些状态数据携带给服务器端,服务器端可以根据cookie去识别使用者。

session表示一个会话,是一个容器对象,是服务端的保存客户端数据的一种机制。servlet会对每一个浏览器请求分配一个session对象。session就是一个concurrenthashmap,可以存储当前会话产生的状态数据。

为什么需要session和cookie?

因为http是无状态的通信协议,服务器端无法知道客户端发送过来的多次http请求是不是属于同一个用户,session用来弥补http无状态的一个不足。服务器端利用session将同一个用户的多次请求记录下来。

因此,基于客户端的cookie和服务端的session机制实现有状态的http协议。

cookie和session的工作过程:

相关推荐
Top`34 分钟前
两个服务之间传递的数据本质上是字节码(Byte Stream)
网络
dyxal1 小时前
非对称加密:彻底解决密钥分发难题的数字安全革命
服务器·网络·安全
少云清3 小时前
【功能测试】4_Web端抓包 _网络知识
网络·功能测试·抓包
记得记得就1514 小时前
【Nginx 实战系列(一)—— Web 核心概念、HTTP/HTTPS协议 与 Nginx 安装】
前端·nginx·http
观望过往5 小时前
WebSocket 技术全解析:原理、应用与实现
网络·websocket·网络协议
mohesashou6 小时前
HCIP作业(OSPF综合实验)
网络·智能路由器
后端小张6 小时前
【JAVA 进阶】深入探秘Netty之Reactor模型:从理论到实战
java·开发语言·网络·spring boot·spring·reactor·netty
q***d1737 小时前
Rust在网络中的协议栈
开发语言·网络·rust
我命由我123458 小时前
Java NIO 编程 - NIO Echo Server、NIO Client(NIO 异步客户端、NIO Selector 异步客户端)
java·开发语言·网络·java-ee·intellij-idea·intellij idea·nio
kk哥889910 小时前
iOS开发:关于日志框架
网络·ios·cocoa