前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【Java面试小短文】Cookie和Session的区别

【Java面试小短文】Cookie和Session的区别

作者头像
砖业洋__
发布2023-05-06 20:42:50
1200
发布2023-05-06 20:42:50
举报
文章被收录于专栏:博客迁移同步博客迁移同步

Cookie和Session的区别

Cookie是客户端浏览器用来保存服务端数据的一种机制,当我们通过浏览器去进行网页访问的时候,服务器可以把某一些状态数据以key-value的形式写入到Cookie中,然后存储到客户端浏览器。下一次再访问服务器的时候,我们可以携带这一些状态数据发送到服务器端,服务器端可以根据Cookie里面携带的内容去识别使用者。

Session它表示一个会话,它是属于服务器端的一个容器对象,默认情况下,针对每一个浏览器的请求,Servlet容器都会分配一个Session对象,Session本质上可以认为是一个ConcurrentHashMap,它可以用来存储当前会话产生的一些状态数据。

HTTP协议本身是一个无状态协议,也就是说,服务器端并不知道客户端发送过来的多次请求是属于同一个用户,所以Session是用来弥补HTTP无状态的一个不足,服务器端可以利用Session来存储客户端在同一个会话里面产生的多次请求的记录,基于服务器的Session存储机制,再结合客户端的Cookie机制,我们就可以去实现一个有状态的HTTP协议。

工作原理如下:

  客户端第一次访问服务器端的时候,服务器端会针对这次请求创建一个会话,并且生成一个唯一的sessionId来标识这个会话,然后服务器端把这个sessionId写入到客户端浏览器的cookie里面,用来去实现客户端状态的保存,接着在后续的请求里面,每一次都会携带sessionId,服务器端就可以根据sessionId来识别当前这个会话的状态。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-08-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Cookie和Session的区别
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档