Cookie和Session的区别
??前言 友友们大家好,我是你们的小王同学?? 今天给大家打来的是 Cookie和Session的区别 希望能给大家带来有用的知识 觉得小王写的不错的话麻烦动动小手 点赞? 收藏⭐ 评论? 小王的主页:小王同学? 小王的gitee:小王同学?? 小王的github:小王同学?
- cookie是
客户端
的机制,Session是服务器端
的机制 -
Cookie
和Session
经常在一起配合使用。但是不是必须配合 - 完全可以用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信息跟踪客户端的状态。
相关文章
- 溢出的文字省略号显示
- ServerManager.exe 0xc0000135 应用程序错误
- IIS7/8下提示 HTTP 错误 404.13 - Not Found 请求筛选模块被配置为拒绝超过请求内容长度的请求
- Eclipse oxygen 版本汉化教程
- 微软汉字转拼音
- Ueditor 前后端分离实现文件上传到独立服务器
- 汉字转拼音类(多音字)
- 兼容IE,chrome 等所有浏览器 回到顶部代码
- unicode 汉字编码表
- 检测URL地址是否有响应
- Cesium for Unreal加载倾斜摄影
- 智能制造车间生产线可视化
- Blender修改视野范围
- UE4 蓝图查找Actor和Actor标签
- UE 实现镜头平移,旋转和缩放
- UE 实现鼠标点选模型
- UE导入FBX、GLTF模型
- 三维引擎导入obj模型不可见总结
- 三维引擎导入obj模型全黑总结
- 使用SVG做模型贴图的思路