当前位置: 首页 > news >正文

神秘的Cookie和Session

Cookie

1.Cookie是什么?

Cookie是浏览器提供的持久化储存数据的方式。

2.从哪里来?

Cookie从服务器中来,存储到客户端中。一个客户端就对应着一个浏览器。

服务器代码中决定了什么样的数据会储存到客户端中,通过HTTP相应的Set-Cookie字段,把键值写到客户端~

3.Cookie到哪里去?

Cookie会在后续客户端访问浏览器的时候带到请求的header中,然后发给服务器。

因为服务器并不是只给一个客户端提供服务,同一时刻要处理多个客户端。此时服务器就可以通过cookie中的信息来识别当前客户端是谁,当前的客户端的服务提供到哪一个环节了。

4.Cookie存储在哪里?

存在浏览器中(客户端)所在的主机子的硬盘中。

5.简单示例

淘宝有一个登录功能。登录账号后,不论是打开的任何页面,都不需要重新登陆。这个时候就是Cookie的功劳。所有打开的网页都是一个账号,但是同一时间一个浏览器只能是一个账号。

6.Cookie和Session之间的关联和区别

关联

在网站的登录功能中,需要配合使用。

区别

Cookie是客户端的储存机制,而Session是服务器的储存机制。

Cookie里面可以存各种键值对和别的信息,而Session则专门用来保存用户的身份信息。

Cookie完全可以单独使用,不搭配Session(实现非登陆场景下)

Session也可以不搭配Cookie使用。(手机app登陆服务器,服务器也需要Session,此时就没有Cookie的概念) Cookie是跟浏览器强相关的。

Cookie是属于HTTP 协议中的一个部分。

Session则可以和HTTP无关(TCP,websocket ...也可以用session)。

getSession中,true代表着这个会话存在就返回现有的,不存在就创建一个新的。false的区别知识在于如果不存在就返回null,也就是不创建新的。

每一个会话中的具体内容,都由程序员自己设定。同时每一个session的sessionId决定了之间的不同。

最后重定向到index中

要注意,HttpSession value的类型是Object,此处需要String就需要手动强转成String。用Object的原因是存各种类型都可以,只需要转换类型就可以使用。

http://www.lryc.cn/news/271040.html

相关文章:

  • springboot接口文档
  • 深入浅出图解C#堆与栈 C# Heap(ing) VS Stack(ing) 第一节 理解堆与栈
  • Maven的使用和配置
  • MongoDB 数据类型
  • Java 将 List 转换为 String常见方式
  • Redis(认识NoSQL,认识redis,安装redis,redis桌面客户端,redis常见命令,redis的Java客户端)
  • idea 出现Cannot resolve symbol ‘springframework‘解决方法
  • ubuntu22.04安装anacoda遇到的坑
  • window的OPen方法,弹窗的特征
  • DFS算法查找所有路径详解
  • 单片机的存储、堆栈与程序执行方式
  • Web3开发成本和主要特性
  • 【数学建模美赛M奖速成系列】Matplotlib绘图技巧(一)
  • 005、数据类型
  • 软考网络工程师考试大纲(2018年最新版)
  • 【数据结构】栈【详解】
  • CSS 纵向底部往上动画
  • 常用的 MySQL 可视化客户端
  • C#使用SyntaxTree获取.cs文件中的属性名和注释
  • 基于价值认同的需求侧电能共享分布式交易策略(matlab完全复现)
  • 门控循环单元(GRU)-多输入回归预测
  • 电池管理系统BMS中SOC算法通俗解析(二)
  • YOLOv5改进 | 2023主干篇 | 华为最新VanillaNet主干替换Backbone实现大幅度长点
  • 爬虫工作量由小到大的思维转变---<第三十三章 Scrapy Redis 23年8月5日后会遇到的bug)>
  • PostgreSQL | 概念 | 什么是OLTPOLAP?
  • 2023年成都市中等职业学校学生技能大赛“网络搭建及应用”赛项竞赛样卷
  • Angular进阶之六:Progressive rendering
  • 机器人中的数值优化之线性共轭梯度法
  • 嵌入式Linux C语言介绍
  • 基于Java电影院票票务系统