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

HTTP:十.cookie机制

Cookie概念及类型

HTTP cookie,简称cookie,又称数码存根、“网站/浏览+魔饼/魔片”等,是浏览网站时由网络服务器创建并由网页浏览器存放在用户计算机或其他设备的小文本文件。Cookie使Web服务器能在用户的设备存储状态信息(如添加到在线商店购物车中的商品)或跟踪用户的浏览活动(如点击特定按钮、登录或记录历史)。

cookie 的起源

早期的 Web 应用面临的最大问题之一就是如何维持状态。简言之,服务器无法知道两个请求是否来自于同一个浏览器。当时,最简单的办法就是在请求的页面中插入一个 token,然后在下次请求时将这个 token 返回至服务器。这需要在页面的 form 表单中插入一个包含 token 的隐藏域,或者将 token 放在 URL 的 query 字符串中来传递。这两种方法都需要手动操作,而且极易出错。

当时网景通讯的一名员工 Lou Montulli,在 1994 年将 “magic cookies” 的概念应用到 Web 通讯中。他试图解决 Web 的第一个购物车应用,现在购物车成了购物网站的支柱。他的原始说明文档提供了 cookie 工作原理的基本信息,该文档后来被作为规范纳入到 RFC 2109(大多数浏览器的实现参考文档)中,最终被纳入到 RFC 2965 中。Montulli 也被授予 cookie 的美国专利。网景浏览器在它的第一个版本中就开始支持 cookie,现在所有 Web 浏览器都支持 cookie。

HTTP Cookie 类型

**会话 cookie:**这些 cookie 在用户访问网站时临时存储信息。它们存储在用户的浏览器中,通常在用户关闭浏览器时被删除。

**持久性 cookie:**即使在用户关闭浏览器后,这些 cookie 仍会保留在用户的计算机上。它们用于记住用户的偏好并帮助实现个性化。

**安全 cookie:**这些 cookie 有助于保护敏感信息,如密码和信用卡号。

**第三方 cookie:**这些 cookie 由第三方网站创建,可在多个网站上跟踪用户活动。

**Flash cookies:**这些 cookie 存储有关视频和音频文件的信息。它们存储在用户的计算机上,用于帮助流媒体。

Cookie原理

用户第一次请求服务器时,服务器返回一个带Set-Cookie(Set-Cookie1)首部的报文,值为键值对,描述了cookie的名字、值、域、路径等信息,然后客户端接下来每次访问服务器的时候都会带上一个Cookie首部的报文,它的值刚好是前面响应报文返回的名字键值对,从而达到验证用户身份的信息。
Cookie过程图:
在这里插入图片描述cookie的设置以及发送过程:

  1. 客户端发送一个http请求到服务器端
  2. 服务器端发送一个http响应到客户端,其中包含Set-Cookie头部
  3. 客户端发送一个http请求到服务器端,其中包含Cookie头部
  4. 服务器端发送一个http响应到客户端
Cookie的属性

value属性

value属性是必需的,它是一个键值对,用于指定Cookie的值。

相关文章:

HTTP:十.cookie机制

Cookie概念及类型 HTTP cookie,简称cookie,又称数码存根、“网站/浏览+魔饼/魔片”等,是浏览网站时由网络服务器创建并由网页浏览器存放在用户计算机或其他设备的小文本文件。Cookie使Web服务器能在用户的设备存储状态信息(如添加到在线商店购物车中的商品)或跟踪用户…...

go语言对http协议的支持

http:无状态协议,是互联网中使用http使用http实现计算机和计算机之间的请求和响应 使用纯文本方式发送和接受协议数据,不需要借助专门工具进行分析就知道协议中的数据 服务器端的几个概念 Request:用户请求的信息,用…...

Origin将双Y轴柱状图升级为双向分组柱状图

当变量同时存在两个数值时的可视化时,往往会想到用双Y轴柱状图来表达我们的数据。 双Y轴柱状图是一种在同一图表中使用左右两个Y轴的可视化形式,常用于展示两组量纲不同或数值范围差异较大的数据。 双向分组柱状图是一种结合了双向柱状图和分组柱状图的…...

FileZilla“服务器发回了不可路由的地址,使用服务器地址代替

问题:在宝塔创建的FTP无法使用,提示“服务器回应不可路由的地址。使用服务器地址代替 第一种解决办法:由于宝塔把FTP被动模式端口范围设置成了39000-40000,所以只需要把阿里云服务器上相应的端口范围开放即可。 第二种解决办法&am…...

Linux中服务器时间同步

简单介绍 在 redhat 8 之前,时间同步服务是使用 NTP(网络时间协议)来实现的,在 redhat 8 及之 后使用是 NTP 的实现工具 chrony 来实现时间同步。 在 redhat 8 及之后,默认情况下已经安装好 chrony 软件并已经开机启…...

gbase8s之线程状态详解(超值)

--mutex wait nsf.0lock 意味着数据库服务器中的一个线程当前正在等待获取名为 nsf.0lock 的互斥锁 可能的原因和影响: 锁争用 (Lock Contention): 这是最常见的原因。多个线程可能需要频繁访问由 nsf.0lock 保护的共享资源。如果持有锁的线程执行时间过长,或者有太多线…...

Linux学习——Linux进程间通信(IPC)聊天程序实践

Linux学习——Linux进程间通信(IPC)聊天程序实践 一、在阿里云服务器上使用talk程序 Linux系统自带的talk命令可以让两个登录用户进行实时文字聊天: 用户A执行:talk usernameB用户B会收到通知,并需要执行&#xff1…...

PCA 降维实战:从原理到电信客户流失数据应用

一、简介 在机器学习领域,数据的特征维度往往较高,这不仅会增加计算的复杂度,还可能导致过拟合等问题。主成分分析(Principal Component Analysis,简称 PCA)作为一种经典的降维技术,能够在保留数…...

即插即用模块(1) -MAFM特征融合

(即插即用模块-特征处理部分) 一、(2024) MAFM&MCM 特征融合特征解码 paper:MAGNet: Multi-scale Awareness and Global fusion Network for RGB-D salient object detection 1. 多尺度感知融合模块 (MAFM) 多尺度感知融合模块 (MAFM) 旨在高效融合 RGB 和深度…...

Linux学习——TCP

一.TCP编程API 1.socket函数 1.socket函数 include include int socket(int domain,int type,int protocol); 参数 domain AF_INET AF_INET6 AF_UNIX,AF_LOCAL AF_NETLINK AF_PACKET type SOCK_STREAM: 流式…...

Kubernetes控制平面组件:调度器Scheduler(二)

云原生学习路线导航页(持续更新中) kubernetes学习系列快捷链接 Kubernetes架构原则和对象设计(一)Kubernetes架构原则和对象设计(二)Kubernetes架构原则和对象设计(三)Kubernetes控…...

数据通信学习笔记之OSPF其他内容2

OSPF 与 BFD 联动 网络上的链路故障或拓扑变化都会导致设备重新进行路由计算,所以缩短路由协议的收敛时间对于提高网络的性能是非常重要的。 OSPF 与 BFD 联动就是将 BFD 和 OSPF 关联起来,一旦与邻居之间的链路出现故障,BFD 对完品以&…...

数据通信学习笔记之OSPF的区域

OSPFArea 用于标识一个 OSPF 的区域 区域是从逻辑上将设备划分为不同的组,每个组用区域号 (Area ID)来标识 OSPF 的区域 ID 是一个 32bit 的非负整数,按点分十进制的形式(与 IPV4 地址的格式一样)呈现,例如 Area0.0.0.1。 为了简便起见&#…...

css3新特性第四章(渐变)

渐变 线性渐变 径向渐变 重复渐变 使用: background-image: xx 渐变 background-image: linear-gradient(red,yellow,green); 公共代码 .box {width: 300px;height: 200px;border: 1px solid black;float: left;margin-left: 30px;margin-top: 30px;text-align:…...

玩机搞机基本常识-------小米OLED屏幕机型怎么设置为永不休眠_手机不息屏_保持亮屏功能 拒绝“烧屏” ?

前面在帮一位粉丝解决小米OLED机型在设置----锁屏下没有永不休眠的问题。在这里,大家要明白为什么有些小米机型有这个设置有的没有的原因。区分OLED 屏幕和 LCD屏幕的不同。从根本上拒绝烧屏问题。 OLED 屏幕的一些优缺点💝💝💝 …...

深拷贝和浅拷贝的区别

浅拷贝: 只复制原对象的基本数据类型字段,拥有相对独立的副本数据,修改时不会影响到原对象的字段值。对于原对象的引用数据类型字段,直接共享原对象字段的引用,修改自己的字段时会同时影响原对象。 深拷贝&#xff1a…...

RabbitMQ和Seata冲突吗?Seata与Spring中的事务管理冲突吗

1. GlobalTransactional 和 Transactional 是否冲突? 答:不冲突,它们可以协同工作,但作用域不同。 Transactional: 这是 Spring 提供的注解,用于管理单个数据源内的本地事务。在你当前的 register 方法中&#xff0c…...

[安全实战]逆向工程核心名词详解

逆向工程核心名词详解 一、调试与执行类 1. 断点(Breakpoint) 定义:在代码中设置标记,使程序执行到此处时暂停类型: 普通断点:通过INT3指令实现条件断点:满足特定条件时触发内存断点&#xf…...

用键盘实现控制小球上下移动——java的事件控制

本文分享Java的一个有趣小项目,实现用键盘控制小球的移动 涉及java知识点:Swing GUI框架,绘图机制,事件处理,焦点控制 1.编写窗口和面板 (1.)定义面板类 Panel 继承自Java 自带类JPanel (2.)定义窗口类 window 继承…...

AutoSAR从概念到实践系列之MCAL篇(二)——Mcu模块配置及代码详解(上)

欢迎大家学习我的《AutoSAR从概念到实践系列之MCAL篇》系列课程,我是分享人M哥,目前从事车载控制器的软件开发及测试工作。 学习过程中如有任何疑问,可底下评论! 如果觉得文章内容在工作学习中有帮助到你,麻烦点赞收藏评论+关注走一波!感谢各位的支持! 根据上一篇内容中…...

BEVDet: High-Performance Multi-Camera 3D Object Detection in Bird-Eye-View

背景 在自动驾驶场景下,以往工作是目标检测任务用图像视角做,语义分割用BEV视角做。本文提出了BEVDet,实现了一个统一的框架,它模块化设计分为图像编码器,视角转换器,BEV编码器以及BEV空间的3D检测头。然而…...

高效获取淘宝实时商品数据:API 接口开发与数据采集实战指南

在电商行业竞争白热化的当下,实时且准确的商品数据是企业制定营销策略、优化产品布局的重要依据。淘宝作为国内头部电商平台,其海量的商品数据蕴含着巨大价值。通过 API 接口高效获取淘宝实时商品数据,成为电商从业者和开发者的必备技能。本文…...

kotlin知识体系(六) : Flow核心概念与与操作符指南

1. Flow基础概念 1.1 冷流(Cold Stream) 冷流是Flow的默认形式,其核心特点如下: • 按需触发:仅在消费者调用 collect 时开始发射数据,且每次收集都会重新执行流的逻辑(类似“单播”&#xff0…...

【CentOs】构建云服务器部署环境

(一) 服务器采购 2 CPU4G 内存40G 系统盘 80G 数据盘 (二) 服务器安全组和端口配置 (三) 磁盘挂载 1 登录 root 2 查看目前磁盘使用情况 df -h 3 查看磁盘挂载情况 识别哪些磁盘没挂载 fdisk -l 4 对未挂载磁盘做分区 fdisk /dev/vdb 输入m&#xff0…...

【AI论文】对人工智能生成文本的稳健和细粒度检测

摘要:机器生成内容的理想检测系统应该能够在任何生成器上很好地工作,因为越来越多的高级LLM每天都在出现。 现有的系统往往难以准确识别人工智能生成的短文本内容。 此外,并非所有文本都完全由人类或LLM创作,因此我们更关注部分案…...

MyFamilyTree:专业家谱族谱制作工具

MyFamilyTree 是一款专业级家谱族谱制作工具,支持 Windows 7 至 11 系统(含服务器版本)‌。该软件以直观的拖拽式操作为核心,支持构建多维家族树结构,并提供丰富的多媒体集成功能,便于用户记录家族成员的生…...

【统计分析120】统计分析120题分享

1-30 判断题 数学模型 指的是通过抽象、简化现实世界的某些现象,利用数学语言来描述他们的结构和行为,做出一些必要的假设,运用适当的数学工具,得到一个数学结论 数学模型:指的是通过抽象、简化现实世界的某些现象&am…...

【Windows10下PP-OCRv4部署指南‌】

Windows10下PP-OCRv4部署指南‌ 一、环境准备‌ 安装Visual Studio 2022‌ 下载并安装 ‌C桌面开发组件‌,确保支持MSVC编译环境‌。 配置系统环境变量,确保cl.exe等编译工具可用。 Python环境配置‌ 推荐使用Conda创建虚拟环境: bash Co…...

Matlab PID参数整定和设计

1、内容简介 Matlab 206-PID参数整定和设计 可以交流、咨询、答疑 2、内容说明 略 某流量控制系统整定方法仿真(3) 摘 要:本次设计针对一个给定的流量控制系统进行仿真,已经确认该系统为简单控制系统,并且控制策略…...

【Linux系统】Linux基础指令(详解Linux命令行常用指令,每一个指令都有示例演示)

文章目录 一、与文件路径相关的指令0.补充知识:路径的认识1.pwd 指令2.cd 指令(含家目录的介绍) 二、创建和删除文件的指令0.补充知识:普通文件和目录文件1.touch 指令(可以修改文件的时间戳)2.mkdir 指令3…...

LLM基础-什么是Token?

LLM基础-什么是Token? 概述 Token 是大语言模型(LLM, Large Language Model)中最基本的输入单元,它是语言被模型“理解”的方式。不同于人类可以直接看懂一段自然语言文本,LLM 只能处理数字,而这些数字就…...

Few-shot medical image segmentation with high-fidelity prototypes 论文总结

题目:Few-shot medical image segmentation with high-fidelity prototypes(高精确原型) 论文:Few-shot medical image segmentation with high-fidelity prototypes - ScienceDirect 源码:https://github.com/tntek/D…...

大模型之路(day 1)

这段时间以来,全身心的投入了研究大模型,虽然还是入门,但比之前已经好了非常多了,不得不说,计算机的学习特别需要强大的自驱力和耐心,以及检索能力。知乎确实在这些知识的分享上做的比csdn好太多了 万事开…...

996引擎-拓展变量:物品变量

996引擎-拓展变量:物品变量 测试代码参考资料对于Lua来说,只有能保存数据库的变量才有意义。 至于临时变量,不像TXT那么束手束脚,通常使用Lua变量就能完成。 测试代码 -- 存:物品拓展strfunction (player)local where =...

集合框架(重点)

1. 什么是集合框架 List有序插入对象,对象可重复 Set无序插入对象,对象不可重复(重复对象插入只会算一个) Map无序插入键值对象,键只唯一,值可多样 (这里的有序无序指的是下标,可…...

IDEA在Git提交时添加.ignore忽略文件,解决为什么Git中有时候使用.gitignore也无法忽略一些文件

文章目录 一、为什么需要.gitignore文件?二、如何在IntelliJ IDEA中高效管理.gitignore文件?1:先下载这个.ignore插件2. 创建或编辑.gitignore文件3. 使用IDEA内置模板快速生成忽略规则4. 实时预览忽略效果5. 检查忽略规则是否生效6.但是一般我们更多时候…...

如何将自己封装的组件发布到npm上:详细教程

如何将自己封装的组件发布到npm上:详细教程 作为前端开发者,我们经常从npm(Node Package Manager)上下载并使用各种第三方库和组件。然而,有时候我们可能会发现自己需要的功能在npm上并不存在,或者我们希望…...

位运算,状态压缩dp(算法竞赛进阶指南学习笔记)

目录 移位运算一些位运算的操作最短 Hamilton 路径(状态压缩dp模板,位运算) 0x是十六进制常数的开头;本身是声明进制,后面是对应具体的数; 数组初始化最大值时用0x3f赋值; 移位运算 左移 把二…...

node.js|环境部署|源码编译高版本的node.js

一、 前言 本文就如何二进制部署和源码编译安装部署node.js环境做一个简单的介绍 node的版本大体是以18版本为界限,也就是说18版本之前对glibc版本没有要求,其后的版本都对glibc版本有要求,node的版本越高,glibc需要的版本也越…...

通信安全员ABC证的考试内容包括哪些?

通信安全员 ABC 证的考试内容整体上围绕通信安全相关的法律法规、安全技术、安全管理等方面展开,但在具体侧重点上有所不同,以下是详细介绍: 通信安全基础知识 通信原理:包含模拟通信和数字通信的基本原理,如调制、解…...

Oracle--SQL基本语法

前言:本博客仅作记录学习使用,部分图片出自网络,如有侵犯您的权益,请联系删除 1、SQL语句介绍 在Oracle开发中,客户端把SQL语句发送给服务器,服务器对SQL语句进行编译、执行,把执行的结果返回给…...

windows服务器及网络:论如何安装(虚拟机)

今天我要介绍的是:在Windows中对于安装系统(虚拟机的步骤以及相关的安装事宜),事不宜迟,让我们来看看系统安装(虚拟机)是怎么操作的: 对现在来说,安装电脑系统已经是非常…...

【网络篇】从零写UDP客户端/服务器:回显程序源码解析

大家好呀 我是浪前 今天讲解的是网络篇的第四章:从零写UDP客户端/服务器:回显程序源码解析 从零写UDP客户端/服务器:回显程序源码解析 UDP 协议特性​核心类介绍​ UDP的socket应该如何使用:1: DatagramSocket2: DatagramPacket回…...

学习笔记:黑马程序员JavaWeb开发教程(2025.3.23)

11.2 案例-文件上传-简介 文件上传的前端页面的代码需要放到springboot项目的static里面,也就是resource文件夹下面的static文件夹里面 服务端接收前端上传的数据,再服务端定义一个controller来接收数据,再controller中定义一个…...

提示词构成要素对大语言模型跨模态内容生成质量的影响

提示词构成要素对大语言模型跨模态内容生成质量的影响 提示词清晰度、具象性与质量正相关 限定指向性要素优于引导指向性要素 大语言模型生成内容保真度偏差 以讯飞星火大模型为实验平台,选取100名具备技术素养的人员,从提示词分类、构成要素和实践原则归纳出7种提示词组…...

浅聊docker的联合文件系统

前言: 在我们pull镜像的时候,就会发现一个神奇的地方,在将镜像pull到本地的时候它是分层下载的,如下图: 这时候我就有一个疑问,为什么是分层下载的?怎么和我们平时下载软件的时候不一样呢? 联…...

计算机视觉cv入门之Haarcascade的基本使用方法(人脸识别为例)

Haar CascadeXML特征分类器,是一种基于机器学习的方法,它利用了积分图像(或总面积)的概念有效地提取特征(例如,边缘、线条等)的数值。“级联分类器”即意味着不是一次就为图像中的许多特征应用数百个分类器,而是一对一地应用分类器…...

【NLP 62、实践 ⑮、基于RAG + 智谱语言模型的Dota2英雄故事与技能介绍系统】

羁绊由我而起,痛苦也由我承担 —— 25.4.14 英雄介绍文件: 通过网盘分享的文件:RAG 智谱语言模型的Dota2英雄故事与技能介绍系统 链接: https://pan.baidu.com/s/1G7Xo5TRvFl2BzUnE0NFaBA?pwd4d4j 提取码: 4d4j --来自百度网盘超级会员v3的…...

Keil MDK 编译问题:function “HAL_IncTick“ declared implicitly

问题与处理策略 问题描述 ..\..\User\stm32f1xx_it.c(141): warning: #223-D: function "HAL_IncTick" declared implicitlyHAL_IncTick(); ..\..\User\stm32f1xx_it.c: 1 warning, 0 errors问题原因 在 stm32f1xx_it.c 文件中调用了 HAL_IncTick(),但…...

OpenCV基础01-图像文件的读取与保存

介绍: OpenCV是 Open Souce C omputer V sion Library的简称。要使用OpenCV需要安装OpenCV包,使用前需要导入OpenCV模块 安装 命令 pip install opencv-python 导入 模块 import cv2 1. 图像的读取 import cv2 img cv2.imread(path, flag)这里的flag 是可选参数&…...