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

Cookie和Session的区别

作者头像
王同学要努力
发布2022-12-30 19:17:15
2870
发布2022-12-30 19:17:15
举报

💟💟前言​ 友友们大家好,我是你们的小王同学😗😗 今天给大家打来的是 Cookie和Session的区别 希望能给大家带来有用的知识 觉得小王写的不错的话麻烦动动小手 点赞👍 收藏⭐ 评论📄 小王的主页:小王同学🚗 小王的gitee:小王同学🏩🏩 小王的github:小王同学💦

  • ​cookie是客户端的机制,Session是服务器端的机制
  • CookieSession经常在一起配合使用。但是不是必须配合
  • 完全可以用Cookie来保存一些数据在客户端 这些数据不一定是用户身份信息,也不一定是token/sessionid
  • session 中的 token /sessionid 也不需要非得通过Cookie/Set-Cookie传递

HttpServletRequest 类中的相关方法

方法

HttpSession

getSession() 描述 在服务器中获取会话,参数如果为true,则当不存在会话时新建会话,参数如果为false,则当不存在会话返回null

getSession() 描述 在服务器中获取会话,参数如果为true,则当不存在会话时新建会话,参数如果为false,则当不存在会话返回null

HttpServletResponse 类中的相关方法

方法 void addCookie(Cookie cookie) 描述 把指定的cookie添加到响应中

HttpSession 类中的相关方法

一个HttpSession对象里面包含多个键值对。我们可以往HttpSession中存任何我们需要的信息。 方法 Object getAttribute(String name) 该方法返回在该session会话中具有指定名称的对象,如果没有指定名称的对象,则返回null void setAttribute(String name, Object value) 该方法使用的指定的名称绑定一个对象到该session会话 boolean isNew() 判断当前是否新创建的会话

Cookie类的相关方法

每个Cookie对象就是一个键值对 方法 String getName() 该方法返回cookie的名称 名称在创建后不能改变(这个值是Set-Cookie给浏览器的)

String getValue() 该方法获取cookie关联的值

​HTTP 的 Cooke 字段中存储的实际上是多组键值对. 每个键值对在 Servlet 中都对应了一个 Cookie 对象.

  • 通过 HttpServletRequest.getCookies() 获取到请求中的一系列 Cookie 键值对.
  • 通过 HttpServletResponse.addCookie() 可以向响应中添加新的 Cookie 键值对.

cookie的工作流程: 客户端访问服务器,服务器调用response.addCookie()方法,产生响应时,会产生set-cookie响应头,将cookie文本发送给客户端,客户端会将cookie文本保存起来,当客户端再次请求服务器时,会产生cookie请求头,将之前服务器发送的cookie信息,再发送给服务器,服务器就可以根据cookie信息跟踪客户端的状态。

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

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

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • HttpServletRequest 类中的相关方法
  • 方法
  • HttpSession
  • HttpServletResponse 类中的相关方法
  • HttpSession 类中的相关方法
  • Cookie类的相关方法
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档