搜索
查看
编辑修改
首页
UNITY
NODEJS
PYTHON
AI
GIT
PHP
GO
CEF3
JAVA
HTML
CSS
搜索
AllinToyou
这个屌丝很懒,什么也没留下!
关注作者
热门标签
jquery
HTML
CSS
PHP
ASP
PYTHON
GO
AI
C
C++
C#
PHOTOSHOP
UNITY
iOS
android
vue
xml
爬虫
SEO
LINUX
WINDOWS
JAVA
MFC
CEF3
CAD
NODEJS
GIT
Pyppeteer
article
热门文章
1
python教学网站免费,python自学平台_realpython官网花钱吗
2
文心一言 4.0 ERNIE-Bot 4.0 :ERNIE-Bot 4.0 大模型深度测试体验报告_文心大模型4.0版本下载
3
FPGA-VGA显示图像_基于fpga的vga显示设计方案
4
网络数据包在链路层、网络层转发过程(转发)_ping链路中数据包发送流程
5
【嵌入式】基于STC89C52RC的51单片机学习(一)_stc89c52rc单片机io接口和vccio接口区别
6
主题:non-fast-forward 错误提示
7
Java计算时间差、日期差总结_java算时间差
8
【IOS】testfilght邀请流程_testflight邀请码
9
ssh设置别名 ,登录_ssh 别名登录
10
矩阵的相似性度量的常用方法_矩阵相似度
当前位置:
article
> 正文
几句话说清session,cookie和token的区别_guestsession.getcookie()是随机的嘛
作者:AllinToyou | 2024-05-02 04:24:02
赞
踩
guestsession.getcookie()是随机的嘛
一、cookie和
session
实际上是同一套认证流程,相辅相成。
cookie保存在客户端
(通常保存session的sessionID,这个sessionID是一个毫无规则的随机数,由服务器在客户端登录通过后随机生产的。客户端每次访问该网站都要带上这个由sessionID组成的cookie。服务器收到请求,首先拿到客户端的sessionID,然后从服务器内存中查询它所代表的客户端(用户名,用户组,有哪些权限等)。)
session保存在服务器
(用于记录客户状态,比如我们经常会用session保存客户的基本信息、权限信息等)
二、token则可以服务器完全不用保存任何登录信息。
客户端可以将Token保存到任何地方,无限制,无状态,利于分布式部署。
整体的流程是这样的:
客户端使用用户名、密码做身份验证;
服务端收到请求后进行身份验证;(也可能是统一登录平台、网关)
验证成功后,服务端会生成一堆客户端身份信息,包括用户名、用户组、有那些权限、过期时间等等。这个整体就叫做token。签发一个Token后返回给客户端;
客户端收到Token以后可以把它存储起来(可以放在随意的数据库中,例如Redis);每次向服务端发送请求的时候,都要带着Token;
Token会有过期时间,过期后需要重新进行验证;
服务端收到请求,会验证客户端请求里面的Token,验证成功,才会响应客户端的请求;
三、为何诞生这些
由于HTTP无状态的特性,如果要实话客户端和服务器端的会话保持,那就需要其它机制来实现,于是Cookie和Session应运而生。
Session和Cookie机制来保持会话,会存在一个问题:客户端浏览器只要保存自己的SessionID即可,而服务器却要保存所有用户的Session信息,这对于服务器来说开销较大,而且不利用服务器的扩展(比如服务器集群时,Session如何同步存储就是个问题)!于是有人思考,如果把Session信息让客户端来保管而且无法伪造不就可以解决这个问题了?进而有了Token机制。
声明:
本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:
https://www.wpsshop.cn/w/AllinToyou/article/detail/522180
推荐阅读
article
《读论文系列 图文检索 计算各个样本相似性
TGDT
》Effi
c
ient Token-Guided ...
图像-文本检索包括两个密切相关的任务:文本到图像检索和图像到文本检索。文本到图像检索:旨在从图像候选集中选择与给定文本最...
赞
踩
article
MJ
discord
添加应用配置
_
mj
.
discord
.
bot
-
token
...
若不存在,把 MidJourney Bot 邀请到要让它作图的频道, 把自己的
bot
也拉到 MidJourney B...
赞
踩
article
数据库报错:无法识别
服务器时
区值或表示多个
时区
。如果要利用
时区
支持,则必须配置服务器或
JDBC
驱动程...
### Cause: java.sql.SQLException: The server time zone value...
赞
踩
article
详细步骤 | 打
包
制作自己的
Python
模块
包
并上传到 Pip 源
PyPI
_
pypi
创建
ap...
本文介绍如何打
包
一个简单的
Python
项目,以及如何将其上传到
Python
包
索引平台(
PyPI
),供他人使用指令安装...
赞
踩
article
Python
打包发布到
pypi
_
pypi
api
token
...
如果需要将自己写好的python打包,并发布到
pypi
,这样其他人就可以直接通过pip install来安装对应的包,可...
赞
踩
article
python
打包上传
pypi
_
pypi
token
...
主要流程:1.
pypi
注册登录并创建
token
(https://
pypi
.org/manage/account/toke...
赞
踩
article
web
存储
详解(
cookie
、
sessionStorage
、
localStorage
、indexed...
目录一、
web
存储
概念简介1. 什么是
web
存储
?2. 为什么需要
web
存储
?二、
web
存储
详解1.
cookie
2. ...
赞
踩
article
PyJWT
登录
鉴权最佳实践【
Refresh
Token
】_
python
如何鉴权
登录
web
...
JWT规定的协议的格式由三部分组成:头部(Header)、负载(Payload)和签名(Signature)。_pyth...
赞
踩
article
使用
Python
编程实现
JWT
(
JSON
Web
Token
)的使用案例_
python
jwttok...
使用
Python
编程实现
JWT
(
JSON
Web
Token
)的使用案例
JSON
Web
Token
(
JWT
)是一种用于...
赞
踩
article
【
Python
】
Python
使用Py
jwt
库
生成
Token
_
python
jwt
token
生成
...
【代码】【
Python
】
Python
使用Py
jwt
库
生成
Token
。_
python
jwt
token
生成
python
...
赞
踩
article
Python
SQLAlchemy
基本操作
和常用技巧(包含大量实例,非常好)_
self
.sessio...
首先说下,由于最新的 0.8 版还是开发版本,因此我使用的是 0.79 版,API 也许会有些不同。因为我是搭配 MyS...
赞
踩
article
Db.
session
.
query
vs
Model
.
query
...
文章目录前言相同之处不同之处总结参考资料前言之间在使用中发现用flask-sqlalchemy 有两种查询的方法 一种是...
赞
踩
article
0基础和我学
python
----
SQLAlchemy
框架
(1)_db.
session
.
query
多...
ModelBase = declarative_base() #_db.
session
.
query
多表
数据格式
db....
赞
踩
article
Web框架——
Flask
系列之
Flask
-
SQLAlchemy
数据库
的
基本操作
(九)_
db
.sess...
数据库
基本操作
在
Flask
-
SQLAlchemy
中,插入、修改、删除操作,均由
数据库
会话管理。会话用
db
.sessio...
赞
踩
article
flask
_
sqlalchemy
中
db
.
session
是
如何保持
请求
间独立的
_
sqlalchemy
...
本文主要
是
为了验证两个问题:
flask
处理
请求
时通过新建线程、进程、协程的区别(顺带一提)
flask
_
sqlalchem...
赞
踩
article
基于
db
.
session
进行
查询
...
基于
db
.
session
进行
查询
(适用于多表
查询
)基本语法:
db
.
session
.query(Models1).fi...
赞
踩
article
python
sqlalchemy
db
.
session
的
commit
()和
colse
()对ses...
python
sqlachemy
session
与model实例的关系_
python
sqlalchemy
查询 需要 ...
赞
踩
article
Flask
数据库
基本操作_db.
session
.
delete
...
一. 增删改操作1. 基本概念在
Flask
-SQLAlchemy中,插入、修改、删除操作,均由
数据库
会话管理。会话用db...
赞
踩
article
Flask
学习笔记(十三)
数据库
基本操作
_
db
.
session
.
update
...
数据库
基本操作
在
Flask
-SQLAlchemy中,插入、修改、删除操作,均由
数据库
会话管理。会话用
db
.
session
...
赞
踩
article
12.
python
数据
库
操作(
SQLAlchemy
)_
python
db.
session
如何更新...
Python
数据
库
操作通常使用 SQLALchemy 模块,它是一个强大的 ORM(对象关系映射)工具,可以实现 Py...
赞
踩
相关标签
计算机视觉
人工智能
机器人
python
pip
开发语言
web存储
cookie
localstorage
sessionstorage
indexedDB
JWT
refresh token
PyJWT
json
前端
编程
Python
SQLAlchemy