Cookie 、session、token都是什么?
1、Cookie
起源:1993年,网景浏览器的员工为了让用户访问某网站时,进一步提高访问速度,实现个人化网络发明了cookie。(看来有时候的偷懒会促进社会的进步啊~,就像人们不想做饭就诞生了外卖)。
Cookie是储存在本地计算机浏览器目录中的文本文件,当浏览器运行的时候,就会把文本文件的内容发给服务器,一旦用户关闭或退出了服务器,cookie就会储存在计算机本地。不过这些cookie都是有时效性的,一旦超过了时间的规定,cookie就会被系统清理掉。且cookie是有大小限制的,一般大小不能超过4kb.
cookie的执行流程:
(1)首先,浏览器会去服务器端发送一个http请求
(2)其次,服务器接收到请求之后会做出响应,发送一个http到客户端,这个响应中就包含了set-cookie头部。
(3)然后,客户端会再次发起请求,我们必须把拿到的cookie放入请求头发送给服务器,服务器就会标识客户端的身份信息。
2、Session
Cookie虽然使用起来比较方便,但是cookie容易被获取并做修改,这就存在了很大的安全隐患,于是就产生了session。当然session是保存在服务器端的,当客户端与服务器连接时,服务器就会检查cookie中是否带有session,如果没有就会就会添加到session中,如果有的话服务器就会知道上次访问过这个数据,然后返回给你上次记录在你身上的数据。
3、Token
Token是用户身份的检验标志,就像当于一个身份证一样,是我们每个人的唯一标识。
工作流程:
(1)当用户登陆成功之后就会在服务器端生成一个token,这个token会保存在服务器端,然后返回给客户端并保存在客户端。(也就是说服务器,客户端都要保存一份)
(2)当用户再次登陆时,就会取出token,作为一个参数加入网络请求中发送给服务器。
(3)服务器接收到token会与服务器端保存的做对比。如果相同就表示登陆成功,如果两个token不同,则表示已经过期,需要重新登陆,如果服务器没有这个token值,说明没有登陆成功
Cookie 、session、token都是什么?的更多相关文章
- cookie, session, token 是什么 以及相应的安全考量
Cookie cookie 最常见的是用来保存一些账号信息,比如下图里的 记住账号 就是记录到了cookie里面 cookie 更主要的是针对和server通信的,我们知道http 是无状态的,那如果 ...
- Python Web学习笔记之Cookie,Session,Token区别
一.Cookie,Session,Token简介 # 这三者都解决了HTTP协议无状态的问题 session ID or session token is a piece of data that i ...
- cookie session token详解
cookie session token详解 转自:http://www.cnblogs.com/moyand/ 发展史 1.很久很久以前,Web 基本上就是文档的浏览而已, 既然是浏览,作为服务器, ...
- cookie,session,token介绍
本文目录 发展史 Cookie Session Token 回到目录 发展史 1.很久很久以前,Web 基本上就是文档的浏览而已, 既然是浏览,作为服务器, 不需要记录谁在某一段时间里都浏览了什么文档 ...
- django基础之day10,cookie session token
https://www.cnblogs.com/Dominic-Ji/p/10886902.html cookie session token
- cookie & session & token compare
cookie & session & token compare cookie.session.token 区别和优缺点 存储位置 cookie 存在 client 端 session ...
- cookie,session,token的定义及区别
参考了很多文章总结的. 1.cookie(储存在用户本地终端上的数据) 服务器生成,发送给浏览器,浏览器保存,下次请求同一网站再发送给服务器. 2.session(会话) a.代表服务器与浏览器的一次 ...
- cookie,session,token的理解
Get POST 区别异同点 淘宝token的 理解 过程算法 防止伪造请求 伪造相对难 简单发展史 登录的操作: 哪些人往自己的购物车中放商品, 也就是说我必须把每个人区分开,这就是一个 ...
- cookie session token
HTTP HTTP是无状态(stateless)的网络协议.HTTP协议自身不对请求和响应之间的通信状态进行保存.也就是说HTTP协议对于发送过的请求或响应都不做持久化处理. 为了实现保持状态功 ...
- Jmeter的代理和cookie/session/Token令牌认证
Jmeter的代理服务器 1.启动Jmeter: 2.“测试计划”中添加“线程组”: 3.“工作台”中添加“HTTP代理服务器”: 4.配置代理服务器:Global Settings下面的端口配置:9 ...
随机推荐
- Mysql高手系列 - 第19篇:mysql游标详解,此技能可用于救火
Mysql系列的目标是:通过这个系列从入门到全面掌握一个高级开发所需要的全部技能. 这是Mysql系列第19篇. 环境:mysql5.7.25,cmd命令中进行演示. 代码中被[]包含的表示可选,|符 ...
- Java 学习笔记之 实例变量非线程安全
实例变量非线程安全: 如果多个线程共同访问1个对象中的实例变量,则可能出现“非线程安全”问题. public class UnSafeHasSelfPrivateNum { private int n ...
- 【JavaScript】使用纯JS实现多张图片的懒加载(附源码)
一.效果图如下 上面的效果图,效果需求如下 1.还没加载图片的时候,默认显示加载图片背景图 2.刚开始进入页面,自动加载第一屏幕的图片 3.下拉界面,当一张图片容器完全显露出屏幕,即刻加载图片,替换背 ...
- 05-03 主成分分析(PCA)
目录 主成分分析(PCA) 一.维数灾难和降维 二.主成分分析学习目标 三.主成分分析详解 3.1 主成分分析两个条件 3.2 基于最近重构性推导PCA 3.2.1 主成分分析目标函数 3.2.2 主 ...
- python编程基础之三十一
面向对象:一开始接触面向对象其实感觉不好用,但是对于一些复杂的问题,使用面向对象其实更加容易,逻辑不容易混乱 它的核心是:类 和 对象 类:对一系列事物的抽象概念,可以视为一张图纸, 对象:就是对类这 ...
- 多线程EventWaitHandle -戈多编程
在.NET的System.Threading命名空间中有一个名叫WaitHandler的类,这是一个抽象类(abstract),我们无法手动去创建它,但是WaitHandler有三个子类,这三个子类分 ...
- HDU - 1512 Monkey King
Problem Description Once in a forest, there lived N aggressive monkeys. At the beginning, they each ...
- Ubuntu分区方案
swap: 4G(跟你自己内存一样大):主分区:空间起始位置:用于交换空间 /boot: 300M(太小会导致软件无法升级):逻辑分区:空间起始位置:EXT4:/boot /: 30G:主分区:空间起 ...
- PMBOK(第六版) PMP笔记-质量审计、风险审计、采购审计的区分
质量审计.风险审计.采购审计的区分 三个概念的相同之处: 都是审计的概念 都是特定知识领域的审计 三个概念的区别: (1)三个概念虽然都是审计,但分布在不同的管理过程组. ·质量审计:执行过程组, ...
- Git上传项目至GitHub
要使用github,首先需要下载git.安装git 1.先在github上创建一个git仓库,复制该github路径 2.用cmd进入一个目录 git clone github路径 从github上直 ...