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

聊聊Session、Cookie、Token、JWT

HTTP是无状态协议,而现实的业务场景中又往往需要保持用户的状态,Session和Cookie就是为解决这个问题而出现的。

什么是Cookie

Cookie是客户端保存用户信息的一种机制,用来记录用户的一些信息,实际上Cookie是服务器在本地机器上存储的一小段文本,并随着每次请求发送到服务器。

Cookie技术通过请求和响应报文中写入Cookie信息来控制客户端的状态。Cookie会根据响应报文里的一个叫Set-Cookie的首部字段信息,通知客户端保存Cookie。当下客户端再向服务端发起请求时,客户端会自动在请求报文中加入Cookie值之后发送出去.之后服务端发现客户端发送过来的Cookie后,会检查是那个客户端发送过来的请求,然后对服务器上的记录,最后得到了之前的状态信息。

什么是Session

本来Session 是一个抽象概念,开发者为了实现中断和继续等操作,将user agent和server之间一对一的交互,抽象为"会话",进而衍生出"会话状态",也就是Session的概念。

Session的实现一般通过后端存储加Cookie来实现,常说的Session要比Cookie安全是因为敏感信息都存储在后端只将对应的Session ID通过Cookie交给前端存储。

目前常用的控制客户端状态的方案是Session+Cookie,仅靠Cookie本身也能通过存储用户信息维持交互状态,只是所有信息都存储在客户端一旦被劫持全部信息都会泄露,并且导致大量数据在网络上传输影响性能。Session的实现不一定只能依靠Cookie,比若说Session ID可以保存在url

什么是Token

token也称

相关文章:

  • Django 数据库查询优化
  • pycharm创建vue项目
  • Vue的路由配置,模块引入
  • CSS学习:设置全局背景图
  • css学习:透明的设置
  • element学习:form表单的校验
  • 配置Message全局弹窗
  • Vue学习:存入会话缓存
  • vue实现简单的记住密码功能
  • element设置表格el-table表头的颜色
  • vue+django跨域问题的学习
  • django清空数据库
  • 将json字符串转换成json对象
  • 小程序节流,防止多次点击
  • django models进行倒序
  • ES6指北【2】—— 箭头函数
  • 【跃迁之路】【444天】程序员高效学习方法论探索系列(实验阶段201-2018.04.25)...
  • Python学习之路13-记分
  • select2 取值 遍历 设置默认值
  • Spring Cloud Feign的两种使用姿势
  • SpringCloud(第 039 篇)链接Mysql数据库,通过JpaRepository编写数据库访问
  • vue数据传递--我有特殊的实现技巧
  • 阿里云前端周刊 - 第 26 期
  • 看完九篇字体系列的文章,你还觉得我是在说字体?
  • 面试题:给你个id,去拿到name,多叉树遍历
  • 七牛云假注销小指南
  • 浅谈JavaScript的面向对象和它的封装、继承、多态
  • 深入体验bash on windows,在windows上搭建原生的linux开发环境,酷!
  • 使用前端开发工具包WijmoJS - 创建自定义DropDownTree控件(包含源代码)
  • 数组大概知多少
  • 消息队列系列二(IOT中消息队列的应用)
  • 写给高年级小学生看的《Bash 指南》
  • - 转 Ext2.0 form使用实例
  • 如何正确理解,内页权重高于首页?
  • 支付宝花15年解决的这个问题,顶得上做出十个支付宝 ...
  • ​ArcGIS Pro 如何批量删除字段
  • ​云纳万物 · 数皆有言|2021 七牛云战略发布会启幕,邀您赴约
  • #1014 : Trie树
  • #162 (Div. 2)
  • $forceUpdate()函数
  • $refs 、$nextTic、动态组件、name的使用
  • (第一天)包装对象、作用域、创建对象
  • (动手学习深度学习)第13章 计算机视觉---微调
  • (四)搭建容器云管理平台笔记—安装ETCD(不使用证书)
  • .NET 8 中引入新的 IHostedLifecycleService 接口 实现定时任务
  • .NET CLR Hosting 简介
  • .NET 药厂业务系统 CPU爆高分析
  • .NET/C# 判断某个类是否是泛型类型或泛型接口的子类型
  • /bin、/sbin、/usr/bin、/usr/sbin
  • ::什么意思
  • @test注解_Spring 自定义注解你了解过吗?
  • [2017][note]基于空间交叉相位调制的两个连续波在few layer铋Bi中的全光switch——
  • [Android]通过PhoneLookup读取所有电话号码
  • [BZOJ1010] [HNOI2008] 玩具装箱toy (斜率优化)
  • [BZOJ5250][九省联考2018]秘密袭击(DP)