Cookie和Session的区别

news2024/10/6 20:36:17

在这里插入图片描述
在这里插入图片描述

💟💟前言

友友们大家好,我是你们的小王同学😗😗
今天给大家打来的是 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信息跟踪客户端的状态。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/125530.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

北京智和信通:IT资产全生命周期运维监控管理方案

IT资产是企业开展正常业务运营和拓展不可或缺的资源,也是企业财产的重要载体。随着信息科技的快速发展,各企业对IT资产的依赖逐渐增强,IT资产的可靠性和有效性面临着愈来愈大的挑战。例如IT资产管理混乱,通过维护手工台账的方式进…

vue入门(一)搭建vue项目,基础显示,指令

之前接触过vue,但是一直不是十分清晰,学的云里雾里,最近打算再次系统的整理一下,重新入门。还是根据vue官方文档一步一步的来,但是是属于简化的那种,会把我的学习过程都记录下来。 1.vue项目的搭建&#xf…

linux、window跨平台的用vs编程

跨平台的用vs编程 准备 创建linux的console程序 工具 – 选项,找到跨平台 连接linux的服务 注意,需要在linux系统那边配置以下的命令 sudo apt install build-essential 验证编译器是否被成功安装 gcc --versionsudo apt install openssh-server …

基于stm32 的简单的智慧农业系统, 有上位机,有下位机

1. 实现的功能 1. 下位机(stm32) (keil 5 ) 1. 按键key1 中断控制 LED 3 的亮灭 2. 按键key2 中断控制 温湿度的获取, (数据通过串口发送给 上位机) 3. 智能检测温湿度是否超标, (超标 开启警…

el-dialog实现拖拽功能示例代码

element UI中dialog组件经常会用到,如果能让其任意拖拽放到不同的位置就更好了,实现方法如下: dialogDraggable.js代码: import Vue from vue // v-dialogDrag: 弹窗拖拽 Vue.directive(dialogDrag, { bind(el, binding, vno…

【再学Tensorflow2】TensorFlow2的层次结构

TensorFlow2的层次结构Tensorflow的层次结构Tensorflow的低阶API示例线性回归模型准备数据定义模型训练模型DNN二分类模型准备数据定义模型训练模型Tensorflow的中阶API示例线性回归模型DNN二分类模型Tensorflow的高阶API示例线性回归模型定义模型训练模型DNN二分类模型定义模型…

微信小程序开发实战10_1 小程序支付业务介绍

移动支付已成大多数消费者日常使用的支付方式之一。移动支付拥有操作简单方便、无需带现金或银行卡,不用找零,目前超过四分之三的用户都在使用移动支付。小程序应用作为一个广泛使用的移动应用,自然也不会放弃移动支付这个大的蛋糕。本章将介…

opencv文件介绍

build:存放.h.hpp.lib文件 bin .dll etc:存放训练好的分类器,用于人脸识别 include:所有的头文件 opencv2 • calib3d:相机校准、姿态估计和三维重建 • core:核心功能模块 • dnn:深度学习模块…

docker(6):Docker网络

目录docker网络介绍docker网络模式常用命令docker网络原理自定义网络实战:redis主从部署docker网络介绍 实际只要我们启动docker,那么主机上就会产生一个名字为docker0的虚拟网桥。它在内核层连通了其他的物理或虚拟网卡,这就将所有容器和本…

【Apifox】Apifox导入knife4j文档

文章目录手动导入自动导入手动导入 在浏览器中打开knife4j文档地址,并按F12打开控制台: 复制api-docs这个接口的请求地址。打开Apifox >> 项目设置 >> 导入数据(手动导入) >> URL导入 >> 把接口的请求地…

蔚来汽车李斌与黑客的数据战争!

‍‍数据智能产业创新服务媒体——聚焦数智 改变商业全面拥抱数字化的浪潮早已袭来,但数据的安全性也成为各行各业关注的焦点。近日,蔚来汽车用户数据遭泄露引发热议。针对此次事件,蔚来先后由其官方、创始人李斌及相关负责人卢龙三次致歉&a…

从数据分析,看公司员工流失率分析报告

一、概述: 1、员工离职和员工流失率的概念: 员工离职:员工被辞退及辞职、不续签的情况 员工流失率(离职率):公司离职的员工人数/(入职人数最初原有人数)*100% 例如:月…

Spring Cloud 介绍及负载均衡Ribbon、服务容错Hystrix 组件使用详解

Spring Cloud 概述 官网 简介 Spring Cloud是一个基于 Spring Boot实现的微服务架构开发框架。它为微服务架构中涉及的配置管理、服务治理、断路器、智能路由、微代理、控制总线、全局锁、决策竞选、分布式会话和集群状态管理等操作提供了一种简单的开发方式。 Spring Clou…

linux 生成火焰图

1. 火焰图简介 火焰图(flame graph)是性能分析的利器,通过它可以快速定位性能瓶颈点。 perf 命令(performance 的缩写)是 Linux 系统原生提供的性能分析工具,会返回 CPU 正在执行的函数名以及调用栈&#…

前瞻 2023年加密行业会更难吗?欧科云链研究院“七大趋势预测”

回望2022,加密行业遭遇了种种不可控因素而导致的艰难险阻,也在变革与发展中孕育着生机与活力。 这一年,我们亲眼目睹了Luna暴雷,三箭资本、FTX这些曾经被认为“大而不倒”的机构接连倒下,市场信心严重受挫;…

量子计算(十八):量子计算机

文章目录 量子计算机 一、量子计算机整体架构 1、量子计算的定位:异构计算 2、量子程序代码构成:宿主代码设备代码 二、量子程序架构(设备代码的架构) 1、量子高级语言 2、量子汇编语言的编译原则 3、不可直接执行的量子比…

当产业互联网时代来临,显著的特点就在于互联网技术不再是主导

事实上,以往,我们所经历的那个互联网玩家频出的年代,其实就是一个以互联网技术为主导的年代。在那样一个年代里,互联网技术几乎是解决一切痛点和难题的万能解药,几乎是破解一切行业痛点和难题的杀手锏。任何一个行业&a…

特斯拉超级充电突破1万桩 充电比加油更方便

12月26日,特斯拉中国大陆第1万个超级充电桩落户上海东方明珠脚下,成为我国新能源汽车整车品牌中屈指可数拥有“万级”大功率直流充电网络的企业,助力中国“新基建”再上高峰,也为中国“双碳”目标的达成再添“电力”。至此&#x…

SpringBoot+VUE前后端分离项目学习笔记 - 【01 环境配置以及VUE2集成ElementUI】

技术栈一览 SpringBoot2 Vue2 ElementUI Axios Hutool Mysql Echarts 所需软件环境 版本一览 JDK 1.8Mysql5.7Node 14.16.0navicatIdea 2021 Vue-cli 安装 npm install -g vue/cli 查看版本 创建VUE工程 初始化工程 vue create vue 选择Manually select feature…

PLDI‘21-Path-Sensitive Sparse Analysis without Path Conditions-基于程序依赖图的路径敏感稀疏分析

这篇文章是港科大团队在PLDI 2021会议上发表的文章。在这之前,作者在PLDI 2018发表Pinpoint。这篇文章在Pinpoint上改进。在Pinpoint的设计中,存储摘要的时候仍然需要缓存大量的路径条件,以及在应用摘要时进行大量的克隆,导致逻辑…