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值,说明没有登陆成功
最新文章
- Windows Azure支持七层负载均衡--Application Gateway
- Oracle配置详解
- PHP随机生成广告图片的实例 代码
- iOS崩溃日志分析-b
- NEFUOJ 500 二分法+最大流量
- 深入了解当前ETL的一些基本技术
- CentOS 7 服务器配置--安装MongoDB
- CSS float的相关图文详解(一)
- redo/declare/typeset
- 发布spring cloud + vue项目
- Redis安装和实际应用
- crontab在/var/log/目录下没有cron.log文件
- 洛谷.4114.Qtree1(树链剖分)
- SSM商城项目(一)
- js异步导致的错误
- android ActivityGroup接收不到onActivityResult
- 全网最详细的启动或格式化zkfc时出现java.net.NoRouteToHostException: No route to host ... Will not attempt to authenticate using SASL (unknown error)错误的解决办法(图文详解)
- 有向连通图增加多少边构成强联通(hdu3836,poj1236)
- mysql主从复制的介绍
- 【javascript】javasrcipt设计模式之状态模式
热门文章
- j2ee开发之Spring2.5框架学习笔记
- Flask基础(08)-->;错误捕获(异常捕获)
- Kubernetes 系列(八):搭建EFK日志收集系统
- Docker系列(五):.Net Core实现k8s健康探测机制
- [LeetCode] 1108. Defanging an IP Address
- python编程基础之三十五
- Kubernetes中的PV和PVC是啥
- Java的动手动脑
- Hive 官方手册翻译 -- Hive DML(数据操纵语言)
- GUI tkinter (Menu)菜单项篇